我在页面上有大约20个按钮.我已经用jquery设置它们来滑动切换以显示和隐藏div.它运行良好,但只有在选择新div之前使用相同的按钮关闭div.我希望如果单击一个按钮,它将向下滑动打开的div,然后滑下它自己的div.现在,如果div仍在显示,并且单击了另一个按钮,则open div将不会关闭.
我认为有太多的按钮可以使if函数在打开时按名称测试每个div,然后向上滑动.是否有一般滑动所有开放的div?
如果我添加一个类并使用css来显示:block,我不会得到动画,所以我使用的是slidetoggle.如果有更好的方法,我很乐意重做我的代码?有没有办法关闭开放的div?
$(document).ready(function(){
$('.show1').click(function(){
$(".row1").slideToggle();
});
$('.show2').click(function(){
$(".row2").slideToggle();
});
$('.show3').click(function(){
$(".row3").slideToggle();
});
});
Run Code Online (Sandbox Code Playgroud)
我看到的最简单的方法是为row你的所有div 添加一个类(比如)并隐藏它们使用
$(".row").not(".rowX").slideUp();not rowX来保持切换活着(并且使用该更新,顺序无关紧要;)).
这最终会像:
$('.show3').click(function(){
$(".row").not(".row3").slideUp();
$(".row3").slideToggle();
});
Run Code Online (Sandbox Code Playgroud)