1

whileループの後に.parentの行を切り替えたテーブルがあります。私のJSは下にあります。ご覧のとおりtoggleClass.parent要素をクリックするとヘッダー行が強調表示されるようにします。しかし、現在のコードでは.parent、1つがクリックされると、すべてのノードがクラスを切り替えています。.parentこれを変更して、クリックしたものだけが切り替わるようにするにはどうすればよいですか?

<script type="text/javascript">  
$(document).ready(function () {

   $(".child").hide();

   function getChildren($row) {
      var children = [];
      while ($row.next().hasClass('child')) {
         children.push($row.next());
         $row = $row.next();
      }
      return children;
   }

   $('.parent').on('click', function () {

      $('.parent').toggleClass('td-active');

      var children = getChildren($(this));
      $.each(children, function () {
         $(this).toggle(1000);

      })
   });

})
</script>
4

2 に答える 2

1
$('.parent').toggleClass('td-active');

に:

$(this).toggleClass('td-active');
于 2013-01-18T21:13:08.470 に答える
0
$('.parent').on('click', function() {

    $(this).toggleClass('td-active');

    var children = getChildren($(this));
    $.each(children, function() {
        $(this).toggle(1000);

    })
});
于 2013-01-18T21:11:52.480 に答える