JQuery选择器:href属性不包含word1或word2

8

我是 JQuery 的新手,我知道这很简单,但我找不到正确的选择器。我尝试了以下代码:

$(":not(a[href=word1],a[href=word2]").click(function() {
... do something
}

但它不起作用,实际上它似乎占用了所有的CPU时间。你能帮我吗?谢谢!

1个回答

23

这里有一个更高效的版本,它首先缩小了范围,只关注锚点:

$("a:not([href*=word1],[href*=word2])").click(function() {
  //do something
});

在这里你可以测试选择器

目前你正在尝试将click事件绑定到所有不是带有这些单词之一的锚点的元素的上面,这种方式的效率非常低,既费时又费力。相反,该方法绑定在锚点上,如果它们的href属性中不包含这些单词,则只会进行绑定。


很棒的答案。节省了我更多的时间。非常感谢。 - Sumit patel

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接