我刚刚编写了这段代码来隐藏div,直到标题被点击,效果很好,只是现在我有三个div在彼此下面,我只想要第一个被展开,然后当另一个被单击时,打开的被关闭,新的被展开。我的Jquery在下面
$(function(){
$('.drop-dwn').click(function(){
$(this).next('.slide1').slideToggle(300);
return false;
});
});我的HTML标记是:
<div class="slide-panels">
<h4 class="drop-dwn">Oil & Gas</h4>
<div class="slide1">
<div class="checkbox"><input type="checkbox" name="" value=""> All</div>
<div class="checkbox"><input type="checkbox" name="" value=""> All</div>
<div class="checkbox"><input type="checkbox" name="" value=""> All</div>
</div>
<h4>SAP & Enterprise Solutions</h4>
<div class="slide2">
<div class="checkbox"><input type="checkbox" name="" value=""> All</div>
<div class="checkbox"><input type="checkbox" name="" value=""> All</div>
<div class="checkbox"><input type="checkbox" name="" value=""> All</div>
</div>
<h4>IT & Change Management</h4>
<div class="slide3">
<div class="checkbox"><input type="checkbox" name="" value=""> All</div>
<div class="checkbox"><input type="checkbox" name="" value=""> All</div>
<div class="checkbox"><input type="checkbox" name="" value=""> All</div>
</div>
</div>发布于 2012-09-26 18:16:53
<div class="slide-panels">
<h4 class="drop-dwn">Oil & Gas</h4>
<div class="first slide1">
<div class="checkbox"><input type="checkbox" name="" value=""> All</div>
<div class="checkbox"><input type="checkbox" name="" value=""> All</div>
<div class="checkbox"><input type="checkbox" name="" value=""> All</div>
</div>
<h4 class="drop-dwn">SAP & Enterprise Solutions</h4>
<div class="slide1">
<div class="checkbox"><input type="checkbox" name="" value=""> All</div>
<div class="checkbox"><input type="checkbox" name="" value=""> All</div>
<div class="checkbox"><input type="checkbox" name="" value=""> All</div>
</div>
<h4 class="drop-dwn">IT & Change Management</h4>
<div class="slide1">
<div class="checkbox"><input type="checkbox" name="" value=""> All</div>
<div class="checkbox"><input type="checkbox" name="" value=""> All</div>
<div class="checkbox"><input type="checkbox" name="" value=""> All</div>
</div>
</div>jQuery:
$('.first').slideDown(300);
$(function(){
$('.drop-dwn').click(function(){
$('.slide1').slideUp(300);
$(this).next('.slide1').slideToggle(300);
return false;
});
});CSS:
.slide1{
display:none;
}DEMO
发布于 2012-09-26 18:19:40
诀窍是slideUp所有的div,然后slideDown你点击的那个。
所以给所有的div一个公共的类,比如'panel‘和
$('.drop-dwn').click(function(){
var _this = this;
$(".panel").slideUp("fast", function() {
$(_this).slideDown("fast");
});
});https://stackoverflow.com/questions/12599366
复制相似问题