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

Javascript
JavaScript 序列化对象实现代码
替代window.event.srcElement效果的可兼容性的函数
div+css+js模拟tab切换效果 事件绑定 IE,firefox兼容
IE和Firefox下event事件杂谈
javascript option onclick事件ie解决方案 兼容ie,firefox
javascript demo 基本技巧
用js实现层随着内容大小动态渐变改变 推荐
JS 的应用开发初探(mootools)
JS 在数组插入字符的实现代码(可参考JavaScript splice() 方法)
JQuery Tips(4) 一些关于提高JQuery性能的Tips
jQuery 淡入淡出、展开收缩菜单实现代码
js控制div及网页相关属性的代码
javascript 翻页测试页(动态创建标签并自动翻页)
Js获取table当前tr行的值的代码
IE 上下滚动展示模仿Marquee机制
jQuery解决iframe高度自适应代码
jQuery 连续列表实现代码
利用jQuery的$.event.fix函数统一浏览器event事件处理
Javascript和Ajax中文乱码吐血版解决方案
js Firefox 加入收藏夹功能代码 兼容Firefox 和 IE

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 223 ::
收藏到网摘: 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

登陆 还没注册?