1

问候,基于我正在使用的 jquery ui 手风琴,我在手风琴列表项中添加了一个滑动切换。所以发生的事情是我点击一个 li 并且一个 div 向下滑动以显示更多内容。

我遇到的问题是我发现自己必须创建多个 id 来引用 slidetoggle。

div id css 的示例:#panel、#panel2、#panel3、#panel4 等....

有没有办法可以使用滑动切换而不必添加另一个数字,所以它会滑动?我有 50 个正在使用的列表项:

这是 js 的示例(您可以看到我将要处理的内容):

 $(".btn-slide").click(function(){
   $("#panel").slideToggle("slow");
   $(this).toggleClass("active"); return false;
 });
 $(".btn-slide2").click(function(){
   $("#panel2").slideToggle("slow");
   $(this).toggleClass("active"); return false;
 });  

示例 html:

  <li><div class="slide"><a href="#" class="btn-slide">One</a></div><div id="panel"></div></li>

  <li><div class="slide"><a href="#" class="btn-slide2">Two</a></div><div id="panel2"></div></li>  
4

1 回答 1

2

这应该可以工作,一切都在一个绑定中:

 $(".slide a").click(function(){
   $(this).toggleClass("active").parent().siblings().slideToggle("slow");
   return false;
 });

如果您可以稍微更改 html(甚至没有编号!),请说:

<li><div class="slide"><a href="#">One</a></div><div class="panel"></div></li>

你可以有一个更精确的:

 $(".slide a").click(function(){
  $(this).toggleClass("active").closest("li").find(".panel").slideToggle("slow");
  return false;
 });
于 2010-02-18T03:12:08.833 回答