【CSS】在点击nav后,用JS加上颜色,怎么在页面跳转后仍能保持改变后的颜色?
导航每个页面都是通过后台标签链接的同一个段HTML,我在点击导航后,通过js加上改变颜色,但是点击跳转到能一个页面,js改后的颜色就失效了,请问这种问题怎么解决?
回答:
我自己来回答吧,不用你们写的那么复杂,每个页面加入一段CSS
方法一:
//首页ul li a:nth-child(1){
color: #FF0000;
}
//品牌介绍
ul li a:nth-child(2){
color: #FF0000;
}
//招牌美食
ul li a:nth-child(3){
.........
}
方法二:
$(function() { var pageUrl = window.location.href;
var aArray = $("ul>li>a");
for (var i = 1; i < aArray.length; i++) {
//高亮首页栏目
if (pageUrl == aArray[0].href) {
$(aArray[0]).addClass("active");
}
//高亮当前栏目,如果为子栏目时,则匹配 href 亮父栏目
else if (pageUrl.substring(0, aArray[i].href.length) == aArray[i].href) {
$(aArray[i]).addClass("active");
}
}
})
回答:
保存个屁噢,我从导航栏进了a页面,关掉,再从地址栏进入b页面,这时候你还给我高亮a页面么?
写个所有页面公用的解析函数,直接用nav的地址去和href匹配
回答:
说一下思路,在每个页面加上js判断
假设跳转之后页面的地址是http://********/zhaoshang.htmlif(/zhaoshang/.test(window.location.pathname)){
招商加盟.style.color="红色"
}else if(){
...
}
回答:
几个办法:
导航栏自己一个iframe;
用sessionStorage / localStorage 保存状态;
跳转页面带URL参数&active =xxx;
用spa 不真的跳转页面;
看答主的题目,估计2、3比较合适
回答:
没必要用到JS 直接用css 类名就好了 每一个nav 加上一个类名,放到这个nav的css文件中
<nav> <a class="index-active">首页</a>
<a class="details-active">详情页</a>
</nav>
在 index.css 中 写
.idnex-active {...}
在 detail.css 中 写
.detail-active {...}
回答:
保存在本地啊
回答:
后台可以做判断,当前页面是哪个然后加类,这个比较方便。
回答:
保存本地,再次进入页面时,读取缓存,进行判断
回答:
把状态保存到cookie吧。
保存到session也行,不过这需要后端开发配合。
回答:
给li的class加一个active,设置active的字体颜色,动态给各个li添加class!
回答:
这是个什么鬼需求??反人类
回答:
可以使用cookie或者session
srssion储存:
localStorage.setItem('className', className)
读取:
var className = localStorage.getItem('className');
以上是 【CSS】在点击nav后,用JS加上颜色,怎么在页面跳转后仍能保持改变后的颜色? 的全部内容, 来源链接: utcz.com/a/154187.html