获取左侧导航链接以保持打开和活动状态
Getting left nav link to stay open and active
目前我有一个左导航菜单可以工作:
$('.navContainer li div').click(function () {
var $t = $(this);
var $next = $t.next('.navtoggle');
$('.navtoggle').not($next).slideUp('active');
$next.slideToggle(400);
});
问题是,需要根据正在进行的页面突出显示最后一级别的链接,并使导航保持打开状态。上面的脚本,一旦点击,将加载相应的页面并关闭导航。我尝试使用饼干,但无法让它工作。我尝试使用文档就绪,它一直工作到页面重新加载并且它只是重置。所以我有点卡住了。我试过:
$(document).ready(function () {
$('.navContainer .navtoggle li a').click(function (e) {
$(e.target).addClass('current');
});
});
.navContainer .navtoggle li a,是用于保持其激活状态的最后一个链接。我正在添加类"当前",因为导航中使用了活动。这将更改链接颜色,仅此而已。我也尝试过a:target和a:active,但一切都不断重置。
我能够在这里找到答案 http://www.itworld.com/article/2832973/development/setting-an-active-menu-item-based-on-the-current-url-with-jquery.html 并更改一些事情来使其工作。想把大部分功劳归功于那个网页,但我能够以此为基础让它工作。最终代码为:
$(function () { setNavigation(); }); function setNavigation() { var path = window.location.pathname; path = path.replace(/'/$/, ""); path = decodeURIComponent(path); $(".navContainer .navtoggle li a").each(function () { var href = $(this).attr('href'); if (path.substring(0, href.length) === href) { $(this).closest('li a').addClass('current'); $(this).closest('.navtoggle').css('display', 'block'); } }); }
相关文章:
- 在Angular 2中布线期间保持零部件处于活动状态
- 引导导航活动状态不起作用
- 如何将活动状态类动态更改(添加)到导航链接
- 获取左侧导航链接以保持打开和活动状态
- Angular 2 即使没有导航到它也能保持路线活动状态
- 根据点击次数写入导航的活动状态
- 尝试在滚动子导航时保持父导航处于活动状态
- 单页网站粘性导航:更改内容元素的活动状态
- Zurb Foundation Top Bar & jQuery - 检查移动导航是否处于活动状态
- 如何设置导航栏的活动状态
- 如何使所选导航按钮保持活动状态
- 更改固定页面导航的活动状态
- 单页网站上的复杂活动状态导航
- 在车把部分中设置导航菜单项为活动状态
- 在用户滚动时为链接中的导航添加活动状态
- 在导航选项卡上切换为活动状态
- 引导导航条子菜单活动状态不工作
- 导航按钮未重置为非活动状态
- 删除后导航栏单击持续的活动状态 JQuery Mobile
- 页面刷新后导航上的活动状态