我有下一个选择器“#btn-similar”,为什么这个监听器有效:
$("#btn-similar").click(function(e){
console.log("similar click");
});
但是这个听众不是:
$(document).on("click", "#btn-similar", function(e){
console.log("similar click");
});
HTML标记是:
<div id="btn-similar" class="details-tab active-nav">
<span class="angle"></span>
<div class="title">Overview</div>
</div>
我正在使用jQuery 1.10,有什么想法吗?
答案 0 :(得分:0)
由于这两段代码都是正确的并且在大多数情况下都能正常工作,我只能想到这些原因导致第二条代码不起作用:
层次结构中有一个<a>
标记或表单帖子,导致浏览器在您的代码结果出现之前转到新页面。
页面中有多个对象id=btn-similar
。
在您的第二个代码块之前发生了一个脚本错误,导致它无法执行。
您在某处有拼写错误,但代码实际上与所需的ID不匹配。在您的问题中,您会显示引用id=btn-similar
的代码,但代码为id=btn-overview
。
仅供参考,您可以在这里看到第二段代码正常工作:http://jsfiddle.net/jfriend00/8s7rukt3/因此,您的页面显然有些奇怪,您尚未披露。