jQueryの最も近い()ヘルプ
-
12-09-2019 - |
質問
だから私はページ上のこのマークアップにはいくつかのコンテナを持っています:
<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(「遅い 『)$(』。ボックスコンテンツ」)を行いません。 ??
編集:私はあなたがページ上でこれらのいくつかを持っている部分を逃しました。親は()。次の動作するはずです。
所属していません StackOverflow