我的脚本有问题。我有我的文件结构列表(所以这是由递归 php 函数构建的,我不知道我有多少子文件或子目录)。默认情况下,文件夹是隐藏的,当用户点击文件夹时,包含 ul 的第一个会向下滑动。问题是 $('.folder') 选择器选择子文件夹,然后选择父文件夹等等,因为每个文件夹都有相同的文件夹类。因此,当我单击打开的文件夹的文件夹时,单击的文件夹将打开,但父文件夹将关闭。我希望描述足够清楚。
这是一些代码:
HTML:
<ul>
<li class="file">file1.txt</li>
<li class="folder">
folder1
<ul>
<li class="folder">
folder2
<ul>
<li class="file">fileA.txt</li>
<li class="file">fileB.txt</li>
</ul>
</li>
<li class="file">file1A.txt</li>
</ul>
</li>
<li class="file">file2.txt</file>
</ul>
JS:
$(document).ready(function() {
$('.folder').click(function() {
$(this).children('ul:first').slideToggle();
});
});
因此,当我单击文件夹 2 时,文件夹 2 的 ul 会向下滑动,但之后文件夹 1 会向上滑动,因为文件夹 2 和文件夹 1 都在 $('.folder') 的集合中。
解决办法是什么?
谢谢。