<div class="nav right"> <ul> <li><a href="a.php" class="home_page">首页</a></li> <li><a href="b.php">APP开发</a></li> <li><a href="c.php">产品中心</a></li> <li><a href="d.php">案例展示</a></li> <li><a href="e.php">资讯中心</a></li> <li><a href="f.php">APP下载</a></li> </ul> </div>
效果如下:点击app开发或者其他选项,使之颜色发生更改
产生原因:点击不同的项目,页面发生改变,因此一般的js或者css(:hover :visited :active :link )不能实现这种效果
解决方法:
一 使用get传值的方式
直接在URL请求后添加;如:< a href="thexuan.jsp?action=transparams&detail=directe">直接传递参数< /a>
<li><a href="a.php" <?php if(参数=="首页") echo "class=\"home_page\"" ?>>首页</a></li>
二 使用cookie传值(未验证)
function writeCookie(name, value, hours)//写入cookie
{
var expire = "";
if(hours != null)
{
expire = new Date((new Date()).getTime() + hours * 3600000);
expire = "; expires=" + expire.toGMTString();
}
document.cookie = name + "=" + escape(value) + expire;
}
// Example:
// alert( readCookie("myCookie") );-->
function readCookie(name)//读取cookie
{
var cookieValue = "";
var search = name + "=";
if(document.cookie.length > 0)
{
offset = document.cookie.indexOf(search);
if (offset != -1)
{
offset += search.length;
end = document.cookie.indexOf(";", offset);
if (end == -1) end = document.cookie.length;
cookieValue = unescape(document.cookie.substring(offset, end))
}
}
return cookieValue;
}
三 使用id 通过js(未验证)
document.getElementById("id").menu.className=样式
四 通过不同的URL地址对比添加class 更改颜色
<style>
.on{background:red;}
</style>
<script>
$(function(){
var navLi=$('li') //此处填写你的导航html对象
var windowUrl=window.location.href; //获取当前url链接
navLi.each(function(){
var t=$(this).find('a').attr('href');
if(t==windowUrl){
$(this).addClass('on'); //添加当前位置样式
}
})
})
</script>