使用具有多个模式的属性选择链接

时间:2018-05-07 10:53:35

标签: jquery

我正在尝试排除

的链接

或者像 var id = "10.10.10.10"; if (/^(10)\.(.*)\.(.*)\.(.*)$/.test(id)){ //10.x.x.x }else if (/^(172)\.(1[6-9]|2[0-9]|3[0-1])\.(.*)\.(.*)$/.test(id)){ //172.16.x.x - 172.31.255.255 }else if (/^(192)\.(168)\.(.*)\.(.*)$/.test(id)){ //192.168.x.x }else { //else } 一样,或者像href="#someLink"

一样

我正在使用这个jquery选择器

href="javascript:void(0)"

无法正常工作,如何为href属性检查添加 条件。

我尝试了其他模式,例如

$("a:not(a[href^='#','javascript'])")

但没有成功,请帮助。

注意:我正在使用$("a:not(a[href^='#'] || a[href=^'javascript'])").on("click",function(event){ ... }); 因为我想定位除这些类型链接之外的其他链接。

1 个答案:

答案 0 :(得分:1)

尝试这种方式:

正如您所说,当您点击<a>以外的其他内容时,您希望执行jquery函数:

$("a:not([href^='#']), a:not([href=^'javascript'])").on("click",function(event){
...
});

不需要使用||(OR)运算符,如您所见,我使用了多个选择器,它将像OR条件一样工作。