当前栏目高亮显示
JS判断当前URL对当前栏目高亮显示,重点是用到了indexOf来判断两个字符串中第一次出现的位置,如果没有出现就返回-1,出现就返回其它,并与返回其它结果的那个字符串所在元素定义一个class.
HTML
<div id="nav"> <ul> <li><a href="//www.jb51.net/html/list/index_127.htm" title="资讯中心"><span>资讯中心</span></a></li> <li><a href="//www.jb51.net/html/list/index_1.htm" title="网络编程"><span>网络编程</span></a></li> <li><a href="//www.jb51.net/html/list/index_104.htm" title="数据库"><span>数据库</span></a></li> <li><a href="//www.jb51.net/html/list/index_96.htm" title="脚本专栏"><span>脚本专栏</span></a></li> <li><a href="//www.jb51.net/html/list/index_7.htm" title="实用技巧"><span>实用技巧</span></a></li> <li><a href="//www.jb51.net/html/list/index_84.htm" title="软件编程"><span>软件编程</span></a></li> <li><a href="//www.jb51.net/html/list/index_8.htm" title="网页制作"><span>网页制作</span></a></li> <li><a href="//www.jb51.net/html/list/index_86.htm" title="操作系统"><span>操作系统</span></a></li> <li><a href="//www.jb51.net/html/list/index_11.htm" title="经典网摘"><span>经典网摘</span></a></li> <li><a href="//www.jb51.net/html/list/index_27.htm" title="网站技巧"><span>网站技巧</span></a></li> <li><a href="//www.jb51.net/html/list/index_99.htm" title="免费资源"><span>免费资源</span></a></li> <li><a href="//www.jb51.net/html/list/index_54.htm" title="关于我们"><span>关于我们</span></a></li> <li><a href="//www.jb51.net/search.asp" title="文章搜索"><span>文章搜索</span></a></li> </ul> </div>
JS
var myNav = document.getElementById("nav").getElementsByTagName("a"); for(var i=0;i<myNav.length;i++) { var links = myNav[i].getAttribute("href"); //alert(links) //alert(myNav[i]); var myURL = document.location.href; if(myURL.indexOf(links) != -1) { myNav[i].className="d"; } }
当前栏目高亮显示不知道你明白了没有?没有的话,我说详细点。首先,你点击一个连接,比如: <li><a
href="//www.jb51.net/html/list/index_127.htm" title="资讯中心">资讯中心</a></li>
点击之后浏览器发生了什么变化呢?是的,就是地址栏变成了:
//www.jb51.net/html/list/index_127.htm
使用 document.location.href;
取得的就是这个地址(//www.jb51.net/html/list/index_127.htm)。
然后我们再遍历当前网页上的所有连接,取得每个连接href的值。遍历的代码:
var myNav = document.getElementById("nav").getElementsByTagName("a"); for(var i=0;i<myNav.length;i++) { var links = myNav[i].getAttribute("href"); }
使用indexOf函数来比较是否页面的所有连接中,有关键字在//www.jb51.net/html/list/index_127.htm中出现。若有的话,就表 明是当前连接,那么就修改当前连接的样式。这就实现了当前栏目高亮显示,当前栏目高亮显示是一个很实用的技巧,在增加用户体验方面尤 其有好处。但在实用过程中,可能需要注意一些细节问题,比如搜索吧的博客是用外链的方式来连接的,那么在处理的时候,点了这个外链的 时候是否高亮呢?这里也只是我觉得当前栏目高亮显示时可能出现的问题稍微说一下,说不定你已经有解决方法了。
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。