使用JavaScript,有什么选项来设置当前选择的导航项目?使用JavaScript,有什么选择来设置当前选择的导航项目?
假设每当有人点击导航链接时刷新页面,唯一的方法是在服务器端进行,或者通过查找当前URL来动态设置它?
还有其他的技巧吗?
使用JavaScript,有什么选项来设置当前选择的导航项目?使用JavaScript,有什么选择来设置当前选择的导航项目?
假设每当有人点击导航链接时刷新页面,唯一的方法是在服务器端进行,或者通过查找当前URL来动态设置它?
还有其他的技巧吗?
window.location.pathname
属性是可靠的,如果你要使用子菜单比较链接的href的菜单中它会很快(即没有正则表达式测试)。
var menuLinks = document.getElementById('menu').getElementsByTagName('a');
for (var i = 0; i < menuLinks.length; i++) {
if (menuLinks[i].href.indexOf(window.location.pathname) > -1) {
doSomething();
}
}
我为自己的页面<body>
元素的类属性,如“家庭节”或“产品节”。
页面加载时,可以使用JavaScript检索属性的值并适当地设置导航类。
if ($("body").attr("class") == 'home-section') {
$("li#primary-nav-home").addClass("active");
}
你也可以实现直CSS同样的事情用适当的选择,摆脱了需要的类。
body.home-section li#primary-nav-home { /* styling rules */ }