当用户单击div.nav
元素时,jQuery将其类更改为active
。当前,它设置display: block
了所有这三个div.content
元素。我希望jQuery仅display: block
在div.content
具有active
类的元素上设置属性。这是我的代码:
$('div.nav').on('click', 'a:not(.active)', function() {
$(this).addClass('active').siblings().removeClass('active')
});
$("div.nav a").click(function(){
$("div.content").css("display", "block");
});
<div class="nav">
<a class="active" href="#1"></a>
<a href="#2"></a>
<a href="#3"></a>
</div>
<div id="1" class="content active"></div>
<div id="2" class="content"></div>
<div id="3" class="content"></div>
.content {
display: none;
}
.content.active {
display: block;
}
我在这里可以做什么?
如果要尝试从相应.content
元素中添加/删除类,则可以检索href
被单击a
元素的属性,以形成用于选择.content
元素的选择器。例如:
$('div.nav').on('click', 'a:not(.active)', function() {
var selector = this.getAttribute('href');
$(this).addClass('active').siblings().removeClass('active');
$(selector).addClass('active').siblings('.content').removeClass('active');
});
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句