$(document).ready(function(){
$("a").not("a[href~='test']").click(function(){
ga('send', 'event', 'Outbound Links', 'click', $(this).attr('href'));
});
});
not选择器对我不起作用。 jquery版本是1.11.0
答案 0 :(得分:0)
疯狂猜测......
您的选择器正在使用~=
,means:
...属性值是以空格分隔的值的列表,其中一个值恰好等于(值)
我猜这不是你的意思。如果您要排除a
包含 href
的任何"test"
元素,那么您需要*=
:
$("a").not("a[href*='test']").click(/*...*/);
如果您要排除href
以 "test"
开头的人,您需要^=
:
$("a").not("a[href^='test']").click(/*...*/);
答案 1 :(得分:0)
您正在使用jquery的~
属性选择器
[name~="value"]
它说属性包含Word Selector
所以,
$("a").not("a[href~='test']")
这仅适用于那些由空格分隔的单词test
的锚点。
所以它需要像这种类型的锚点href:
<a href="http://example.com/ test /zy/zy/">link</a>
我猜你没有标记。
$("a").not("a[href*='test']")
我猜您需要使用*
包含选择器。