javascript - 如何正确高亮当前页面的导航链接?
像上面这种网站导航,当我点击该链接的时候会高亮显示该标签,当我点击其它页面的时候会跳转到对应的页面,并且当前页面对应的导航标签也会高亮,请问大家一般的设计方案是什么?有什么好的、优雅的解决方案?求解答。
我个人想到的解决方案是:
1、在windows加载的时候遍历这几个标签的url,如果和当前页面的网页url相同就高亮;
2、用cookie出储存当前点击的导航索引,然后进入当前页面后读取索引值,给索引值标记的标签添加高亮;
感觉这两个方法有点不靠谱,求更好的思路。
回复内容:
像上面这种网站导航,当我点击该链接的时候会高亮显示该标签,当我点击其它页面的时候会跳转到对应的页面,并且当前页面对应的导航标签也会高亮,请问大家一般的设计方案是什么?有什么好的、优雅的解决方案?求解答。
我个人想到的解决方案是:
1、在windows加载的时候遍历这几个标签的url,如果和当前页面的网页url相同就高亮;
2、用cookie出储存当前点击的导航索引,然后进入当前页面后读取索引值,给索引值标记的标签添加高亮;
感觉这两个方法有点不靠谱,求更好的思路。
JavaScript
可以用 a 元素的 href
property 和页面 URL 相同来判断
也可以给每一个元素添加一个自定义 data 属性如 data-pattern
然后里面放正则匹配
JSFiddle: https://jsfiddle.net/bd4g5f2h/
感觉没有这个必要,本来就三五个网页。你创建一个高亮的class。然后给每一页设置一个高亮的导航不就可以了。如果说你用的是模板引擎。这一步就可以用模板引擎来做了。如果说你用的是单页应用,这样的情况才考虑用js,或者说判断#后面的东西