注释有三个层次的线程。外祖父母(深度-1)注释全部显示。我想显示前两个深度-2答复(父类注释)对每个祖父母的评论,并让其余的隐藏和显示按钮(理想的一个改变文本之间的“隐藏”和“显示”)。深度-3的答复都应该被隐藏,除非只有一个深度-2的回复,如果可能的话,应该显示第一个深度-3的答复,以便在所有场景中总共显示两个答复。
我已经成功地在小提琴中切换了所有深度-3的回复。
以下是标记和javascript (更新):
<div id="comments">
<ol class="commentlist">
<li class="comment byuser comment-author-admin even thread-even depth-1" id="li-comment-677">
<div id="comment-677" class="grandparent">
<div class="comment-inner">comment-677
</div>
<ul class="children">
<li class="comment byuser comment-author-admin odd alt depth-2" id="li-comment-678">
<div id="comment-678" class="parent">
<div class="comment-inner">comment-678</div>
<ul class="children">
<li class="comment byuser comment-author-admin even depth-3" id="li-comment-680">
<div id="comment-680">
<div class="comment-inner">comment-680</div>
</div>
</li>
<li class="comment byuser comment-author-admin odd alt depth-3" id="li-comment-686">
<div id="comment-686">
<div class="comment-inner">comment-686</div>
</div>
</li>
<li class="comment byuser comment-author-admin even depth-3" id="li-comment-688">
<div id="comment-688">
<div class="comment-inner">comment-688</div>
</div>
</li>
<li class="comment byuser comment-author-admin odd alt depth-3" id="li-comment-689">
<div id="comment-689">
<div class="comment-inner">comment-689</div>
</div>
</li>
</ul>
</div>
</li>
</ul>
</div>
</li>
<li class="comment byuser comment-author-admin odd alt thread-odd thread-alt depth-1" id="li-comment-679">
<div id="comment-679" class="grandparent">
<div class="comment-inner">comment-679
</div>
<ul class="children">
<li class="comment byuser comment-author-admin even depth-2" id="li-comment-682">
<div id="comment-682" class="parent">
<div class="comment-inner">comment-682</div>
<ul class="children">
<li class="comment byuser comment-author-admin odd alt depth-3" id="li-comment-690">
<div id="comment-690">
<div class="comment-inner">comment-690</div>
</div>
</li>
</ul>
</div>
</li>
<li class="comment byuser comment-author-admin even depth-2" id="li-comment-691">
<div id="comment-691" class="parent">
<div class="comment-inner">comment-691</div>
</div>
</li>
</ul>
</div>
</li>
<ol>
</div>
发布于 2014-06-09 21:24:03
对于第三层,您应该做的基本上是相同的事情,但是使用gt()
(基于零的)选择器跳过前两个答复:
http://jsfiddle.net/isherwood/Frpmj/3
$(this).next('ul').find('li:gt(1)').slideToggle();
http://api.jquery.com/gt-selector/
https://stackoverflow.com/questions/24128269
复制相似问题