gpt4 book ai didi

jquery - 我有很多 .not() (排除)我怎样才能只用一行来做

转载 作者:行者123 更新时间:2023-12-01 01:13:30 25 4
gpt4 key购买 nike

我编写了一个页面转换代码,但问题是我有很多(要在同一页面中转到的链接)要排除,我可以只用一行来做吗?

$('a')
.not('[href="#"]')
.not('[href="#navShow"]') // the problem
.not('[href="#navHide"]') // the problem
.not('[href="#about"]') // the problem

.click(function () {
});

最佳答案

.not接受一个选择器,包括 selector group 。所以:

$('a').not('[href="#"], [href="#navShow"], [href="#navHide"], [href="#about"]').click(function () {
});

或者用 :not 代替( CSS docsjQuery docs ):

$('a:not([href="#"]):not([href="#navShow"]):not([href="#navHide"]):not([href="#about"])').click(function () {
});

(与 .not 不同,:not 不能接受选择器组,只能接受一个简单的选择器。但我们可以将它们链接到整个选择器中。)

也就是说,您可能会考虑向您希望或不希望为此选择的 a 元素添加一个类,并使用该类(带或不带 取决于你走哪条路)而不是单独进行这个href检查。

关于jquery - 我有很多 .not() (排除)我怎样才能只用一行来做,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44483771/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com