2

次のように、html を繰り返すボタンをクリックして、「子」div のみを切り替える方法を考えていました。

<div class="button">
     <div class="hide toggle">
          Blah1
     </div>
</div>
<div class="button">
     <div class="hide toggle">
          Blah2
     </div>
</div>
<div class="button">
     <div class="hide toggle">
          Blah3
     </div>
</div>

目標は、中間の子 div のみに影響を与え、残りを非表示にすることです。

それが可能かどうかはわかりません。

このコードは、すべての div を切り替えていました:

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

    $('.button').click(function() {
    $('.toggle').slideToggle();
    }, function () {
        $('.toggle').slideToggle();
    });

  });
</script>

助けてくれて本当にありがとうございます。

4

4 に答える 4

5

試す

$(this).next('.toggle').slideToggle();

また

$(this).children('.toggle:first').slideToggle();
于 2009-05-26T15:35:25.000 に答える
2

クリック イベント ハンドラー内で、thisキーワードは、クリックされた要素を参照します。$('.toggle').slideToggle() 行を次のように置き換えます

$('.toggle',this).slideToggle();
于 2009-05-26T15:36:28.350 に答える
1

トーマス・ストックとラス・カムはそれを正しく理解しています...私はそれを適切にまとめました. これをページのどこかに貼り付けます...通常は、すべてのコードの後のヘッドまたはフッターに貼り付けます。

<script type="text/javascript">
    $(document).ready(function(){ 
        $(".button").click(function() {
    $(this).next('.toggle').slideToggle();
    });
    });
</script> 
于 2011-07-14T01:24:39.237 に答える
-1

切り替えたいDIVがクリック要素の子要素ではない場合、私がしなければならないこと、例えば:

<span onclick="$(this).next('.showme').slideToggle();">Klick to show first Showme-Class</span>
<div class="showme">You've clicked the first span-element</div>

<span onclick="$(this).next('.showme').slideToggle();">Klick to show second Showme-Class</span>
<div class="showme">You've clicked the second span-element</div>

<span onclick="$(this).next('.showme').slideToggle();">Klick to show third Showme-Class</span>
<div class="showme">You've clicked the third span-element</div>
于 2013-11-13T10:24:25.937 に答える