JS导航样式切换问题,纠结! javascripthtml 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><title>无标题文档</title><style type="text/css">.currenttt{color:#FF0000;}</style></head><body><ul id="nav" class="menu"> <li><a href="../index.php" >首页</a></li> <li><a href="../a/qiyegaikuang/2014/0425/1.html?1398585475" >企业概况</a></li> <li><a href="../plus/list.php?tid=2" >企业动态</a></li> <li><a href="../plus/list.php?tid=3" >产品中心</a></li> <li ><a href="../plus/list.php?tid=4" >健康生活</a></li> <li ><a href="../plus/list.php?tid=5" >招商加盟</a></li> <li><a href="../plus/list.php?tid=6" >联系我们</a></li></ul><script type="text/javascript" language="javascript"> var nav = document.getElementById("nav"); var links = nav.getElementsByTagName("a"); var arr=[]; for (var i=0;i<links.length;i++){ arr.push(links[i].parentNode); links[i].onclick=function(e){ for(var j=0;j<arr.length;j++){ arr[j].className=''; } this.parentNode.className='currenttt'; var a=e||window.event; if(a.preventDefault){ a.preventDefault(); }else{ a.returnValue=false; } } }</script></body></html>没做梦看懂你的逻辑 确实li点哪个就有样式了,但是li里面的A链接点击没反应了,点哪个都进不去,是不是还有要注意的地方啊,朋友 本来就不是点击后设置的样式,导航应该输入模板页中的公共部分,那么当你点击进入具体页面,页面加载时,需要根据页面地址来将相应的标签选中,当然你可以根据地址栏中的tid 参数 来判断应该将哪个标签选中(即设置标签样式为currenttt) 点击后立即转向,所以选中应该是转向后的页面加载时设置,你必须建立一种对应机制,比如你可以多个参数nav=1 来标识 现在该设置哪个菜单为选中,即便以后经常变,那么你也可以在链接中指定nav=数字 来区分 last一起为零,是因为你这里根本没进去if(currenturl.indexOf(linkurl)!=-1){last = i;}再查,你A标签里写的是“../a.html”之类的,但是你要知道这个地址在浏览器的地址栏里是http://bbs.csdn.net/a.html这样的,肯定匹配不上的,我一般是根据页面名称来判断的 哥们,firebug一下嘛,代码 var a=e||window.event; if(a.preventDefault){ a.preventDefault(); }else{ a.returnValue=false; } 注释掉应该就可以啦,preventDefault()取消事件的默认动作 弱弱的回一名:可以使用cookie技术来做,点击导航时就把那个导航li所在位置存下来,跳转到新页面时再把这个值读出来,再在相应位置的li加上class currenttt。只提供方法,不提供代码 求救!!如何让这段CSS支持IE浏览器! JavaScript初学者应该了解的二三事!(翻译) 怎样还原JQuery获取的域名里的中文? 如何实现用javascript打印网页中指定的table中的内容,望高手赐教 有关动态表单的问题,为什么提示对象为空啊? 滚动文字IE正常,放入FF下就失效,为什么呢? 树形菜单问题 div层添加图片为什么老是在div层的后面? 请教一个关于循环的问题!头疼! 急急急,请问一般的网页链接里面的加密的参数是怎么实现的? jquery slideDown() jquery小图切换大图问题
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<style type="text/css">
.currenttt{
color:#FF0000;}
</style>
</head><body>
<ul id="nav" class="menu">
<li><a href="../index.php" >首页</a></li>
<li><a href="../a/qiyegaikuang/2014/0425/1.html?1398585475" >企业概况</a></li>
<li><a href="../plus/list.php?tid=2" >企业动态</a></li>
<li><a href="../plus/list.php?tid=3" >产品中心</a></li>
<li ><a href="../plus/list.php?tid=4" >健康生活</a></li>
<li ><a href="../plus/list.php?tid=5" >招商加盟</a></li>
<li><a href="../plus/list.php?tid=6" >联系我们</a></li>
</ul>
<script type="text/javascript" language="javascript">
var nav = document.getElementById("nav");
var links = nav.getElementsByTagName("a");
var arr=[];
for (var i=0;i<links.length;i++){
arr.push(links[i].parentNode);
links[i].onclick=function(e){
for(var j=0;j<arr.length;j++){
arr[j].className='';
}
this.parentNode.className='currenttt';
var a=e||window.event;
if(a.preventDefault){
a.preventDefault();
}else{
a.returnValue=false;
}
}
}
</script>
</body>
</html>没做梦看懂你的逻辑
if(currenturl.indexOf(linkurl)!=-1)
{
last = i;
}
再查,你A标签里写的是“../a.html”之类的,但是你要知道这个地址在浏览器的地址栏里是http://bbs.csdn.net/a.html这样的,肯定匹配不上的,我一般是根据页面名称来判断的
if(a.preventDefault){
a.preventDefault();
}else{
a.returnValue=false;
} 注释掉应该就可以啦,preventDefault()取消事件的默认动作
只提供方法,不提供代码