-2

我可能在做一些明显错误的事情,但我就是看不到。我正在尝试使用 for 循环来定义多个点击事件并且遇到了意外的结果。其中一些是有效的(函数开头的隐藏和显示,但两个部分最终都针对循环中的第二个项目。有人可以看看这个并告诉我我做错了什么吗?谢谢非常感谢您的帮助!

这是链接: http: //grana.us/test/expand2.html

4

1 回答 1

1

您正在为每个 id 的所有摘要分配相同的事件。这是错误的...

首先...要隐藏所有细节并显示所有切换器,只需使用:

$('.details').hide();
$('.toggler').show();

然后为所有摘要定义点击功能:

$('.summary').click(function(){
   if($('.toggler',this).html() == ' -'){
      $('.toggler',this).html(' +');
      $('.details',$(this).parent()).hide();
   }else{
      $('.toggler',this).html(' -');
      $('.details',$(this).parent()).show();
   }
});

把所有东西都放进去...

$(function(){
   ...
});

应该没问题。

于 2013-10-26T12:07:55.470 回答