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>