gpt4 book ai didi

javascript - Jquery - if 语句匹配各种条件

转载 作者:行者123 更新时间:2023-11-28 09:03:23 25 4
gpt4 key购买 nike

我想在单击链接时运行一些函数,但我想排除符合某些条件的链接...我不确定我在哪里出错,但它似乎仍然在运行该函数href 为 #top 的链接。

$('a').click(function () {
if(($(this).not('[href*="#"]') && $(this).not(".TypesOfProperties") && $(this).not('[target]')) || $(this).is('[target="_parent"]')) {
// DO SOMETHING
}
});

还有...

<a href='#top'>Don't run function</a>
<a class='.TypesOfProperties' href='/mypage'>Don't run function</a>
<a target='_blank' href='/mypage'>Don't run function</a>

<a href='/mypage'>Do run function</a>
<a target='_parent' href='/mypage'>Do run function</a>

有什么想法吗?

最佳答案

$(this).not(...)不是检查,它删除不满足给定条件的元素。因此,如果您单击 <a href="#top">然后$(this).not('[href*="#"]')返回一个空的 jQuery 对象。

您可以检查长度(和多个选择器):

if ($(this).not('[href*="#"] , .TypesOfProperties').length || $(this).is('[target="_parent"]')) {

关于javascript - Jquery - if 语句匹配各种条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17407586/

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