我正在阅读Jquery厨师书。我已经学习了如何使用指定的类过滤DOM元素。现在我想做与之相反的意思是现在我想获得没有指定类的元素。
我的HTML代码是:
<li>
<a href="#" class="external">link</a>
<a href="#" class="external">link</a>
<a href="#"></a>
<a href="#" class="external">link</a>
<a href="#" class="external">link</a>
</li>
<a href="#"></a>
<a href="#">link</a>
<a href="#">link</a>
<a href="#">link</a>
<a href="#">link</a></li>
Jquery代码是:
jQuery(function () {
jQuery('a').filter('.external').text('hello testing');
});
使用上面的代码,我可以使用&#34; 外部&#34;获取所有锚标记。类。现在我想得到外部类的所有锚标签。请帮帮我怎么办..
答案 0 :(得分:3)
您可以使用.not()
method代替.filter()
:
jQuery('a').not('.external').text('hello testing');
或者您可以使用:not()
selector:
jQuery('a:not(.external)').text('hello');
请注意,您可以在不使用.filter()
的情况下获得与原始.filter()
代码相同的结果:
jQuery('a.external').text('hello testing');
答案 1 :(得分:0)
你也可以这样做
$(function(){
jQuery('.external').text('hello testing');
jQuery('a').not('.external').text('hello not testing');
});
答案 2 :(得分:0)
您可以菊花链式not
方法来实现:
$('a').text('hello').not('.external').text('goodbye');
这会将所有a
标记的innerText设置为hello,然后选择所有非.external
标记并将其设置为“再见”。