jquery not选择器工作不正常
我知道有些主题有类似的问题,但我找不到解决问题的方法。 我有7个字母。他们有jquery not选择器工作不正常,jquery,Jquery,我知道有些主题有类似的问题,但我找不到解决问题的方法。 我有7个字母。他们有导航链接,项目元素类,还有一个活动类 我有一个脚本,如果单击非活动元素,它将执行一些方法。 我的剧本: $('a.nav-link.item-element').not('.active').click(function () { console.log(result); }); 我的问题是,即使我单击active element,脚本也在执行其工作,因此not属性不起作用,但是如果我将第一个选择行粘贴
导航链接
,项目元素
类,还有一个活动
类
我有一个脚本,如果单击非活动元素,它将执行一些方法。
我的剧本:
$('a.nav-link.item-element').not('.active').click(function () {
console.log(result);
});
我的问题是,即使我单击active element,脚本也在执行其工作,因此not
属性不起作用,但是如果我将第一个选择行粘贴到控制台,则可以:
因此总结:选择器not
在控制台中检查时起作用,但在单击元素时不起作用
有人知道问题出在哪里吗
##HTML
我制作原始html只是为了向您展示-我知道这并不漂亮,但它只是为了测试:
<a class="nav-link item-element" href="#" id="test-element" data-toggle="pill" role="tab" aria-selected="false">element2</a>
<a class="nav-link item-element" href="#" id="test-element" data-toggle="pill" role="tab" aria-selected="false">element3</a>
<a class="nav-link item-element" href="#" id="test-element" data-toggle="pill" role="tab" aria-selected="false">element4</a>
<a class="nav-link item-element" href="#" id="test-element" data-toggle="pill" role="tab" aria-selected="false">element5</a>
<a class="nav-link item-element" href="#" id="test-element" data-toggle="pill" role="tab" aria-selected="false">element6</a>
<a class="nav-link item-element" href="#" id="test-element" data-toggle="pill" role="tab" aria-selected="false">element7</a>```
```
我们还需要查看HTML,以便创建问题的工作示例使用:$(文档)。在('click','a.nav-link.item元素:not(.active'),function(){})
,因为您可能正在操作domJohn,您的解决方案正在工作,谢谢!也许发表评论接受你的回答。无论如何,你能描述一下为什么使用$(document)
它能工作吗?这是因为你在运行时添加了活动的类。当DOM加载并绑定事件处理程序时,它不在元素上。John的建议之所以有效,是因为它是一个委托事件处理程序