我想通过jQuery not() 隐藏一个不属于某个类的元素:
<a href="#" id="c_1" class="content-btn">Content 1</a>
<a href="#" id="c_2" class="content-btn">Content 2</a>
<div class="post-item c_1"></div>
<div class="post-item c_2"></div>
和
var thisContent;
jQuery('.content-btn').click(function() {
thisContent = this.id;
jQuery('.post_item').not('.'+thisContent).fadeOut();
}
我在此上下文中使用.not()
方法错误,因为它似乎不起作用!
答案 0 :(得分:3)
您的选择器需要
jQuery('.post-item')
你需要在jQuery的末尾关闭),如下所示:
var thisContent;
jQuery('.content-btn').click(function() {
thisContent = this.id;
jQuery('.post-item').not('.'+thisContent).fadeOut();
});
有关工作示例,请参阅http://codepen.io/anon/pen/EaNXjg。
答案 1 :(得分:0)
尝试使用
$(element).hasClass(".clasname").fadeOut();
答案 2 :(得分:0)
作为@AND最后注意到修改你的选择器..当你使用点击Anchor时你需要使用 e.preventDefault; 试试这个
jQuery('.content-btn').click(function(e) {
e.preventDefault;
thisContent = this.id;
jQuery('.post-item').not('.'+thisContent).fadeOut();
$('.'+thisContent).fadeIn();
});