Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何调用';单击';当用户单击href时_Javascript_Jquery - Fatal编程技术网

Javascript 如何调用';单击';当用户单击href时

Javascript 如何调用';单击';当用户单击href时,javascript,jquery,Javascript,Jquery,我试图在用户单击锚定标记时触发警报,但没有触发警报。下面是我正在尝试的代码 折叠 $(函数(){ $(“#折叠”)。单击(函数(){ 警报(“此处”); }); }); 在标记变成超链接之前,您需要有一个href。否则,它们只是锚。要解决此问题,应执行以下操作: <a id="collapse" href="#"> Collapse</a> $(function(){ $('#collapse').click(function(){

我试图在用户单击锚定标记时触发警报,但没有触发警报。下面是我正在尝试的代码

折叠
$(函数(){
$(“#折叠”)。单击(函数(){
警报(“此处”);
});
});

在标记变成超链接之前,您需要有一个href。否则,它们只是锚。要解决此问题,应执行以下操作:

    <a id="collapse" href="#"> Collapse</a>

    $(function(){
       $('#collapse').click(function(){
          alert('here');
       });
    });

$(函数(){
$(“#折叠”)。单击(函数(){
警报(“此处”);
});
});
希望有帮助


(我也假设是jQuery,但你的小提琴是用mooTools设置的,不确定这是否是故意的。这是我的修复方法:)

确保防止链接的默认点击行为

$(function(){
  $('#collapse').click(function(e){
      e.preventDefault();
      alert('here');
  });
});

工作示例:

您的代码还可以,但您没有在小提琴中加载jQuery

附言: 我再次附加了您的代码,因为SO不允许我只发布一个到JSFIDLE的链接,而没有代码:)



它应该可以正常工作,只需将JSFIDLE上的框架更改为包含JQuery并在DOMReady上运行即可

您的代码绝对没有问题。当您从jsFiddle左侧的框架选项中选择一个
jQuery
库时,它就会起作用


更新为包含框架。

jQuery在您的示例中似乎没有加载。实际上,您的代码可以运行,只需从“选择框架”选项中选择jQuery。如果没有href,则它不是链接,但仍然可以单击。OP只想在单击时触发事件。HREF无关紧要。这是个好建议。但这并不能真正回答这个问题。
$(function(){
  $('#collapse').click(function(e){
      e.preventDefault();
      alert('here');
  });
});
$(function(){
  $('#collapse').click(function(){
      alert('here');
  });
});
<a id="collapse" href="#" onclick="alert('here');"> Collapse</a>