仅显示最接近的列表元素

Alg*_*ron 6 javascript navigation jquery html-lists

这是我已经拥有的一个例子

主要功能有效,但现在我需要使控制器列表更小,以便它更适合屏幕,因为它是固定的.

所以,我认为它应该显示活动项目中的下三个列表项目和前两个列表项目.

这样的东西可行,但我认为应该有更短更方便的方式:

//Display closest items
$('#historyController li.active').prevAll('li:not(.first)').hide().slice(0,2).show();
$('#historyController li.active').nextAll('li:not(.last)').hide().slice(0,3).show();
Run Code Online (Sandbox Code Playgroud)

任何有关重新分解当前代码以获得更好性能的提示也会有所帮助.

小智 0

<ul>
   <li>list item 1</li>
   <li>list item 2</li>
   <li class="third-item">list item 3</li>
   <li>list item 4</li>
   <li>list item 5</li>
</ul>

$('li.third-item').next().css('background-color', 'red');
Run Code Online (Sandbox Code Playgroud)

文档链接next()

这些都是您可以用于树遍历的项目