我试图弄清楚当我点击这些可折叠元素时,是否有办法使用 jquery 的 slideDown/slideUp/slideToggle 函数来制作动画。这是元素的 html 布局的片段:
<ul>
<li class="category1"><a href="#"></a></li>
<ul>
<div class="tag1">
<li class="cat2"><a href="#">derp</a></li>
<li class="cat2"><a href="#">derp</a></li>
<li class="cat2"><a href="#">derp</a></li>
</div>
</ul>
<li class="category2"><a href="#"></a></li>
<ul>
<div class="tag2">
<li class="cat2"><a href="#">derp</a></li>
<li class="cat2"><a href="#">derp</a></li>
<li class="cat2"><a href="#">derp</a></li>
</div>
</ul>
<li class="category3"><a href="#"></a></li>
<ul>
<div class="tag3">
<li class="cat2"><a href="#">derp</a></li>
<li class="cat2"><a href="#">derp</a></li>
<li class="cat2"><a href="#">derp</a></li>
</div>
</ul>
</ul>
这是我尝试过的javascript代码。它有效,但它很长。我想知道是否有更有效的方法来完成同样的事情。
$('.category1').click(function(){
$('.tag1').slideToggle('200');
$('.tag2').slideUp('200');
$('.tag3').slideUp('200');
return false;
});
$('.category2').click(function(){
$('.tag1').slideUp('200');
$('.tag2').slideToggle('200');
$('.tag3').slideUp('200');
return false;
});
$('.category3').click(function(){
$('.tag1').slideUp('200');
$('.tag2').slideUp('200');
$('.tag3').slideToggle('200');
return false;
});