我想在jQuery中为某些锚标签设置一个点击事件触发器。
我想在一个新的标签中打开某些链接,而忽略具有特定类的链接(在你问之前,我不能把类放在我试图捕捉的链接上,因为它们来自CMS)。
我想排除具有"button"
或"generic_link"
类的链接
我试过了:
$(".content_box a[class!=button]").click(function (e) {
e.preventDefault();
window.open($(this).attr('href'));
});
但这似乎不起作用,另外,我如何执行OR语句来将"generic_link"
包含在排除中?
发布于 2010-06-10 22:12:07
您可以使用.not()方法:
$(".content_box a").not(".button")
$(".content_box a:not('.button')")
这两种方法之间几乎没有区别,除了.not()
更具可读性(尤其是在链接的情况下),而:not()
的速度更快一些。有关差异的更多信息,请参阅this Stack Overflow answer。
发布于 2010-06-10 22:11:44
使用这个..
$(".content_box a:not('.button')")
发布于 2018-07-26 04:21:57
为了添加一些今天对我有帮助的信息,还可以将jQuery对象/this
传递给.not()选择器。
$(document).ready(function(){
$(".navitem").click(function(){
$(".navitem").removeClass("active");
$(".navitem").not($(this)).addClass("active");
});
});
.navitem
{
width: 100px;
background: red;
color: white;
display: inline-block;
position: relative;
text-align: center;
}
.navitem.active
{
background:green;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="navitem">Home</div>
<div class="navitem">About</div>
<div class="navitem">Pricing</div>
https://stackoverflow.com/questions/3015103
复制相似问题