質問

だから私はページ上のこのマークアップにはいくつかのコンテナを持っています:

        <div class="box w400">
            <div class="box-header">
                <span class="expand-collapse">expand/collapse</span>
                <h3>Heading</h3>
            </div>
            <div class="box-content">
                <p>Some content here...</p>
            </div>
        </div>

そして私は.expand-崩壊スパンをクリックした後、■はコンテンツのdivがダウン(トグル)を上にスライドまたはなることを達成しようとしています。

ここで私が使用しているjQueryのですが、私は)(最も近いとこれを達成しようとしています:

        $(document).ready(function() {
            $('.expand-collapse').click(function() {
                $(this).closest('.box-content').slideToggle('slow');
            });
        });

しかし、それはいくつかの理由のために働いていません:(

役に立ちましたか?

解決

これを試してください:

$(document).ready(function() {
    $('.expand-collapse').click(function() {
        $(this).parent().next('.box-content').slideToggle('slow');
    });
});

それはそれは、最も近いを使用しない、親のdivの次の兄弟を選択します。

他のヒント

最も近い()閉じ親要素を検索します。あなたのケースでは、スパンは、クラス■はコンテンツを持つすべての親要素を持ちません。 。なぜちょうどslideToggle(「遅い 『)$(』。ボックスコンテンツ」)を行いません。 ??

編集:私はあなたがページ上でこれらのいくつかを持っている部分を逃しました。親は()。次の動作するはずです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top