Jquery .toggleClass(';活动';)在单击其他链接时不删除活动
我试图做一个非常直接的滑动切换,以及切换类(“活动”)。它目前可以自己工作(切换活动),但当我点击另一个链接时,它不会删除活动。我知道我错过了一些相当简单的东西,我想知道它是什么。有什么建议吗Jquery .toggleClass(';活动';)在单击其他链接时不删除活动,jquery,slidetoggle,Jquery,Slidetoggle,我试图做一个非常直接的滑动切换,以及切换类(“活动”)。它目前可以自己工作(切换活动),但当我点击另一个链接时,它不会删除活动。我知道我错过了一些相当简单的东西,我想知道它是什么。有什么建议吗 $('.content').hide(); $('.expander')。单击(函数(x){ $(this.toggleClass('active'); var toggle=$(this.nextUntil('.expander'); toggle.slideToggle(); $('.content
$('.content').hide();
$('.expander')。单击(函数(x){
$(this.toggleClass('active');
var toggle=$(this.nextUntil('.expander');
toggle.slideToggle();
$('.content').not(toggle.slideUp();
x、 预防默认值();
});代码>
.expander{背景:红色;宽度:100%;填充:10px;显示:块;页边距底部:10px;文本装饰:无;}
.expander.active{背景:黑色;}
.content{显示:无;}
- 一,
- 二,
- 三,
- 四,
- 五,
- 六,
- 七,
- 八,
- 九,
- 十,
- 十一,
- 十二,
- 十三,
- 十四,
- 十五
在切换之前,只需使用classexpander从所有元素中删除classactive
。此外,若要启用活动元素,请检查该元素是否有与之关联的类活动
$('.content').hide();
$('.expander').click(function(x) {
var toggleClass = $(this).hasClass('active') ? true : false;
$('.expander').removeClass('active');
if(!toggleClass)
$(this).toggleClass('active');
var toggle = $(this).nextUntil('.expander');
toggle.slideToggle();
$('.content').not(toggle).slideUp();
x.preventDefault();
});
示例:这是一条单行线
$('.expander').click(function(x) {
$(this).addClass('active').next('.content').slideDown().prev('.expander').siblings('.expander').removeClass('active').next('.content').slideUp();
});
演示:
/$('.content').hide();
$('.expander')。单击(函数(x){
$(this).addClass('active')。next('.content')。slideDown().prev('.expander')。同胞('.expander')。removeClass('active')。next('.content')。slideUp();
});代码>
.expander{
背景:红色;
宽度:100%;
填充:10px;
显示:块;
边缘底部:10px;
文字装饰:无;
}
.主动{
背景:黑色;
}
.内容{
显示:无;
}
- 一,
- 二,
- 三,
- 四,
- 五,
- 六,
- 七,
- 八,
- 九,
- 十,
- 十一,
- 十二,
- 十三,
- 十四,
- 十五
非常好用……谢谢。我知道我只是错过了一件简单的事情:)投票胜于感谢。如果这个答案解决了你的问题,请把它标记为正确。