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


Posted in Javascript onNovember 24, 2007

当前栏目高亮显示 

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

HTML

<div id="nav"> 
<ul> 
<li><a href="//3water.com/html/list/index_127.htm" title="资讯中心"><span>资讯中心</span></a></li> 
<li><a href="//3water.com/html/list/index_1.htm" title="网络编程"><span>网络编程</span></a></li> 
<li><a href="//3water.com/html/list/index_104.htm" title="数据库"><span>数据库</span></a></li> 
<li><a href="//3water.com/html/list/index_96.htm" title="脚本专栏"><span>脚本专栏</span></a></li> 
<li><a href="//3water.com/html/list/index_7.htm" title="实用技巧"><span>实用技巧</span></a></li> 
<li><a href="//3water.com/html/list/index_84.htm" title="软件编程"><span>软件编程</span></a></li> 
<li><a href="//3water.com/html/list/index_8.htm" title="网页制作"><span>网页制作</span></a></li> 
<li><a href="//3water.com/html/list/index_86.htm" title="操作系统"><span>操作系统</span></a></li> 
<li><a href="//3water.com/html/list/index_11.htm" title="经典网摘"><span>经典网摘</span></a></li> 
<li><a href="//3water.com/html/list/index_27.htm" title="网站技巧"><span>网站技巧</span></a></li> 
<li><a href="//3water.com/html/list/index_99.htm" title="免费资源"><span>免费资源</span></a></li> 
<li><a href="//3water.com/html/list/index_54.htm" title="关于我们"><span>关于我们</span></a></li> 
<li><a href="//3water.com/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="//3water.com/html/list/index_127.htm" title="资讯中心">资讯中心</a></li> 

点击之后浏览器发生了什么变化呢?是的,就是地址栏变成了:

//3water.com/html/list/index_127.htm

使用 document.location.href; 

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

Javascript 相关文章推荐
用javascript获取当页面上鼠标光标位置和触发事件的对象的代码
Dec 09 Javascript
js确定对象类型方法
Mar 30 Javascript
多种方法实现load加载完成后把图片一次性显示出来
Feb 19 Javascript
jQuery焦点图轮播插件KinSlideshow用法分析
Jun 08 Javascript
EasyUI Pagination 分页的两种做法小结
Jul 09 Javascript
jQuery自定义插件详解及实例代码
Dec 29 Javascript
React实践之Tree组件的使用方法
Sep 30 Javascript
angular2系列之路由转场动画的示例代码
Nov 09 Javascript
JS实现中英文混合文字溢出友好截取功能
Aug 06 Javascript
解决vue的 v-for 循环中图片加载路径问题
Sep 03 Javascript
灵活使用console让js调试更简单的方法步骤
Apr 23 Javascript
在layui中对table中的数据进行判断(0、1)转换为提示信息的方法
Sep 28 Javascript
精解window.setTimeout()&amp;window.setInterval()使用方式与参数传递问题!
Nov 23 #Javascript
document.designMode的功能与使用方法介绍
Nov 22 #Javascript
Flash+XML滚动新闻代码 无图片 附源码下载
Nov 22 #Javascript
摘自百度的图片轮换效果代码
Nov 19 #Javascript
window.open被浏览器拦截后的自定义提示效果代码
Nov 19 #Javascript
比较简单实用的使用正则三种版本的js去空格处理方法
Nov 18 #Javascript
利用ASP发送和接收XML数据的处理方法与代码
Nov 13 #Javascript
You might like
小偷PHP+Html+缓存
2006/11/25 PHP
PHP 面向对象 PHP5 中的常量
2010/05/05 PHP
PHP中如何判断AJAX提交的数据
2012/02/05 PHP
php注销代码(session注销)
2012/05/31 PHP
php集成套件服务器xampp安装使用教程(适合第一次玩PHP的新手)
2015/06/03 PHP
PHP使用ODBC连接数据库的方法
2015/07/18 PHP
JQuery 学习笔记 选择器之二
2009/07/23 Javascript
初识javascript 文档碎片
2010/07/13 Javascript
hover的用法及live的用法介绍(鼠标悬停效果)
2013/03/29 Javascript
获取下拉列表框的值是数组,split,$.inArray示例
2013/11/13 Javascript
JS仿iGoogle自定义首页模块拖拽特效的方法
2015/02/13 Javascript
javascript 继承学习心得总结
2016/03/17 Javascript
RequireJS简易绘图程序开发
2016/10/28 Javascript
小程序实现列表点赞功能
2018/11/02 Javascript
JS实现的点击按钮图片上下滚动效果示例
2019/01/28 Javascript
基于循环神经网络(RNN)的古诗生成器
2018/03/26 Python
python给微信好友定时推送消息的示例
2019/02/20 Python
python中property属性的介绍及其应用详解
2019/08/29 Python
python打印文件的前几行或最后几行教程
2020/02/13 Python
python 的numpy库中的mean()函数用法介绍
2020/03/03 Python
python 安装库几种方法之cmd,anaconda,pycharm详解
2020/04/08 Python
python3处理word文档实例分析
2020/12/01 Python
HTML5 b和i标记将被赋予真正的语义
2009/07/16 HTML / CSS
html5 Canvas画图教程(4)—未闭合的路径及渐变色的填充方法
2013/01/09 HTML / CSS
Mistine官方海外旗舰店:泰国国民彩妆品牌
2016/12/28 全球购物
英国最大的汽车配件在线商店:Euro Car Parts
2019/09/30 全球购物
施华洛世奇巴西官网:SWAROVSKI巴西
2019/12/03 全球购物
商场促销活动方案
2014/02/08 职场文书
医疗器械售后服务承诺书
2014/05/21 职场文书
二年级学生期末评语
2014/12/26 职场文书
2015年学生会工作总结范文
2015/03/31 职场文书
文明旅游倡议书
2015/04/28 职场文书
2019七夕节祝福语36句,快来收藏吧
2019/08/06 职场文书
创业项目大全(适合在家创业的项目)
2019/08/15 职场文书
Mysql文件存储图文详解
2021/06/01 MySQL
Python使用Web框架Flask开发项目
2022/06/01 Python