当前位置: 首页 > 图文教程 > 网络编程 > Javascript > 用js查找法实现当前栏目的高亮显示的代码

Javascript
经常用到的JavasScript事件的翻译
Javascript下的keyCode键码值表
用javascript动态调整iframe高度的代码
javascript应用:Iframe自适应其加载的内容高度
javascript 控制弹出窗口
用javascript父窗口控制只弹出一个子窗口
给moz-firefox下添加IE方法和属性
FireFox中textNode分片的问题
对google个性主页的拖拽效果的js的完整注释[转]
身份证号码前六位所代表的省,市,区, 以及地区编码下载
一个友好的.改善的 Object.prototype.toString的实现
如何写一个通用的JavaScript效果库!(1/2)
如何写一个通用的JavaScript效果库!(2/2)
几个高效,简洁的字符处理函数
无语,javascript居然支持中文(unicode)编程!
ie 处理 gif动画 的onload 事件的一个 bug
讲两件事:1.this指针的用法小探. 2.ie的attachEvent和firefox的addEventListener在事件处理上的区别
firefox 和 ie 事件处理的细节,研究,再研究-----书写同时兼容ie和ff的事件处理代码
深入聊聊Array的sort方法的使用技巧.详细点评protype.js中的sortBy方法
JavaScript 中的replace方法说明

Javascript 中的 用js查找法实现当前栏目的高亮显示的代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 187 ::
收藏到网摘: n/a

当前栏目高亮显示
JS判断当前URL对当前栏目高亮显示,重点是用到了indexOf来判断两个字符串中第一次出现的位置,如果没有出现就返回-1,出现就返回
其它,并与返回其它结果的那个字符串所在元素定义一个class.
HTML
复制代码 代码如下:

<div id="nav">
<ul>
<li><a href="http://www.ruanchen.com/" title="资讯中心"><span>资讯中心</span></a></li>
<li><a href="http://www.ruanchen.com/" title="网络编程"><span>网络编程</span></a></li>
<li><a href="http://www.ruanchen.com/" title="数据库"><span>数据库</span></a></li>
<li><a href="http://www.ruanchen.com/" title="脚本专栏"><span>脚本专栏</span></a></li>
<li><a href="http://www.ruanchen.com/" title="实用技巧"><span>实用技巧</span></a></li>
<li><a href="http://www.ruanchen.com/" title="软件编程"><span>软件编程</span></a></li>
<li><a href="http://www.ruanchen.com/" title="网页制作"><span>网页制作</span></a></li>
<li><a href="http://www.ruanchen.com/" title="操作系统"><span>操作系统</span></a></li>
<li><a href="http://www.ruanchen.com/" title="经典网摘"><span>经典网摘</span></a></li>
<li><a href="http://www.ruanchen.com/" title="网站技巧"><span>网站技巧</span></a></li>
<li><a href="http://www.ruanchen.com/" title="免费资源"><span>免费资源</span></a></li>
<li><a href="http://www.ruanchen.com/" title="关于我们"><span>关于我们</span></a></li>
<li><a href="http://www.ruanchen.com/" 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="http://www.ruanchen.com/" title="资讯中心">资讯中心</a></li>
点击之后浏览器发生了什么变化呢?是的,就是地址栏变成了:
http://www.ruanchen.com/"codetitle">复制代码 代码如下:

var myNav = document.getElementById("nav").getElementsByTagName("a");
for(var i=0;i<myNav.length;i++)
{
var links = myNav[i].getAttribute("href");
}

使用indexOf函数来比较是否页面的所有连接中,有关键字在http://www.ruanchen.com/tml/list/index_127.htm中出现。若有的话,就表
明是当前连接,那么就修改当前连接的样式。这就实现了当前栏目高亮显示,当前栏目高亮显示是一个很实用的技巧,在增加用户体验方面尤
其有好处。但在实用过程中,可能需要注意一些细节问题,比如搜索吧的博客是用外链的方式来连接的,那么在处理的时候,点了这个外链的
时候是否高亮呢?这里也只是我觉得当前栏目高亮显示时可能出现的问题稍微说一下,说不定你已经有解决方法了。

评论 (0) All

登陆 还没注册?