雨,落在校园里!我撑着伞,慢慢地在雨中漫步。那嫣红的风凰叶,在雨中,轻轻地飘落下来,似乎有一段离别哀愁的情感啊!
判断当前URL对当前栏目高亮突出显示,重点是用indexOf来判断两个字符串中第一次出现的位置,如果没有出现就返回-1,出现就返回 其它,并与返回其它结果的那个字符串所在元素定义一个class样式。
页面HTML代码如下:
<divid="nav"> <ul> <li><arel="nofollow noopener noreferrer" href="http://www.dede58.com/2015/muban"><span>模板超市</span></a></li> <li><arel="nofollow noopener noreferrer" href="http://www.dede58.com/2015/chajian"><span>插件下载</span></a></li> <li><arel="nofollow noopener noreferrer" href="http://www.dede58.com/2015/edu"><span>建站好代码教程</span></a></li> <li><arel="nofollow noopener noreferrer" href="http://www.dede58.com/2015/video"><span>视频好代码教程</span></a></li> <li><arel="nofollow noopener noreferrer" href="http://www.dede58.com/2015/js"><span>特效下载</span></a></li> <li><arel="nofollow noopener noreferrer" href="http://www.dede58.com/2015/sucai"><span>站长素材</span></a></li> <li><arel="nofollow noopener noreferrer" href="http://www.dede58.com/2015/kuzhan"><span>酷站欣赏</span></a></li> <li><arel="nofollow noopener noreferrer" href="http://www.dede58.com/2015/down"><span>源码下载</span></a></li> </ul> </div>
页面JS脚本如下:
varmyNav=document.getElementById("nav").getElementsByTagName("a"); for(vari=0;i<myNav.length;i++){ varlinks=myNav[i].getAttribute("href"); //alert(links); //alert(myNav[i]); varmyURL=document.location.href; if(myURL.indexOf(links)!=-1){ myNav[i].className="d"; } }
比如:点击“资讯中心”之后,URL地址变成 http://www.dede58.com/2015/muban ,而使用 document.location.href 取得的就是这个地址。然后我们再遍历当前查找到的所有a连接,取得每个连接href的值。遍历的代码: var myNav = document.getElementById("nav").getElementsByTagName("a"); for(var i=0;i<myNav.length;i++){ var links = myNav[i].getAttribute("href"); } 使 用indexOf函数来比较是否页面的所有连接中,是否有当前页的URL地址出现。若有的话,就表明是当前栏目,那么就修改当前连接的样式。这就实现了当 前栏目高亮显示,当前栏目高亮显示是一个很实用的技巧,在增加用户体验方面尤其有好处。但在实用过程中,可能需要注意一些细节问题,比如网站是用外链的方 式来连接的,那么在处理的时候,点了这个外链的 时候就可能出现问题,呵呵。
本文织梦用javascript查找法如何实现当前栏目样式的高亮显示到此结束。如果我们有着快乐的思想,我们就会快乐;如果我们有着凄惨的思想,我们就会凄惨。小编再次感谢大家对我们的支持!