javascript - 仅显示最接近的列表元素

标签 javascript jquery navigation html-lists

这里是 an example of what I have already

主要功能正常,但现在我需要缩小 Controller 列表,以便它更好地适应屏幕,因为它的位置是固定的。

所以,我认为它应该显示事件项目的下三个列表项和前两个列表项。

这样的方法可行,但我认为应该有更短、更方便的方法:

//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();

重构当前代码以获得更好性能的任何技巧也会有所帮助。

最佳答案

<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');

文档链接 next()

这就是您可以用于 tree-traversal 的所有项目

关于javascript - 仅显示最接近的列表元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14231674/

相关文章:

javascript - Knockout.js:获取计算可观察值以返回数组以与选择选项一起使用

jQuery 选项卡。 。 。我需要做这一切! (鼠标悬停,从选项卡单击导航并根据页面选择选项卡)

html - 垂直对齐导航菜单中的链接

Javascript 页面已满载 bool 检查

javascript - 使用 AngularJS 的 Reddit oAuth

javascript - 从模板访问对象属性到函数 - Angular

javascript - 如何根据另一个选择选项禁用选择选项

javascript - 如何验证在单击按钮时创建的字段

jquery - 自举视差速度

menu - 什么是符合 WAI-ARIA 标准的导航栏/菜单实现