前の行でリンクがクリックされたときに、スライドトグルが非表示のテーブル行を表示するように機能させようとしています。最初にスライドがスムーズでないという問題がありましたが、slidetoggleがテーブルの行でうまく機能しないことがわかりました。そこで、行内のdivの非表示の行にコンテンツを貼り付け、代わりに非表示にすることにしました。私の問題は、jqueryが行内でそのdivを見つけるための正しいコードを理解できないように見えることです。
ここにJSfiddleの例があります:http://jsfiddle.net/yrM3H/811/
私のコードの例は次のとおりです。
html:
<table>
<tr>
<td>
<div class="hidden">Expanded!</div>
</td>
</tr>
<tr>
<td><div class="toggle">Content</div></td>
</tr>
<tr>
<td>
<div class="hidden">Expanded!</div>
</td>
</tr>
</table>
js:
jQuery(document).ready(function () {
jQuery(".toggle").parent().parent().next().children().next(".hidden").hide();
jQuery(".toggle").click(function () {
$('.active').not(this).toggleClass('active').parent().parent().next().children().next('.hidden').slideToggle(300);
$(this).toggleClass('active').parent().parent().next().children().next('.hidden').slideToggle("fast");
});
});