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

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

HTML

复制代码 代码如下:

<div id="nav">  
<ul>  
<li><a href="http://www.jb51.net/html/list/index_127.htm" title="资讯中心"><span>资讯中心</span></a></li> 
<li><a href="http://www.jb51.net/html/list/index_1.htm" title="网络编程"><span>网络编程</span></a></li> 
<li><a href="http://www.jb51.net/html/list/index_104.htm" title="数据库"><span>数据库</span></a></li> 
<li><a href="http://www.jb51.net/html/list/index_96.htm" title="脚本专栏"><span>脚本专栏</span></a></li> 
<li><a href="http://www.jb51.net/html/list/index_7.htm" title="实用技巧"><span>实用技巧</span></a></li> 
<li><a href="http://www.jb51.net/html/list/index_84.htm" title="软件编程"><span>软件编程</span></a></li> 
<li><a href="http://www.jb51.net/html/list/index_8.htm" title="网页制作"><span>网页制作</span></a></li> 
<li><a href="http://www.jb51.net/html/list/index_86.htm" title="操作系统"><span>操作系统</span></a></li> 
<li><a href="http://www.jb51.net/html/list/index_11.htm" title="经典网摘"><span>经典网摘</span></a></li> 
<li><a href="http://www.jb51.net/html/list/index_27.htm" title="网站技巧"><span>网站技巧</span></a></li> 
<li><a href="http://www.jb51.net/html/list/index_99.htm" title="免费资源"><span>免费资源</span></a></li> 
<li><a href="http://www.jb51.net/html/list/index_54.htm" title="关于我们"><span>关于我们</span></a></li> 
<li><a href="http://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="http://www.jb51.net/html/list/index_127.htm" title="资讯中心">资讯中心</a></li> 
点击之后浏览器发生了什么变化呢?是的,就是地址栏变成了:
http://www.jb51.net/html/list/index_127.htm
使用 document.location.href; 
取得的就是这个地址(http://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函数来比较是否页面的所有连接中,有关键字在http://www.jb51.net/html/list/index_127.htm中出现。若有的话,就表
明是当前连接,那么就修改当前连接的样式。这就实现了当前栏目高亮显示,当前栏目高亮显示是一个很实用的技巧,在增加用户体验方面尤
其有好处。但在实用过程中,可能需要注意一些细节问题,比如搜索吧的博客是用外链的方式来连接的,那么在处理的时候,点了这个外链的
时候是否高亮呢?这里也只是我觉得当前栏目高亮显示时可能出现的问题稍微说一下,说不定你已经有解决方法了。

时间: 2025-01-17 12:18:10

用js查找法实现当前栏目的高亮显示的代码_javascript技巧的相关文章

js实现的简洁网页滑动tab菜单效果代码_javascript技巧

本文实例讲述了js实现的简洁网页滑动tab菜单效果代码.分享给大家供大家参考.具体如下: 这里介绍的是一款风格简洁的网页滑动门代码,基于JS和Div+CSS实现.滑动门菜单,只需鼠标放上去就切换的菜单,和网页选项卡只是操作形式上的不同而已,滑动门改选项卡只需将门菜单中的onmouseover换成onclick就行了,这样换了之后,切换内容需要鼠标点击门菜单才可以. 运行效果截图如下: 在线演示地址如下: http://demo.jb51.net/js/2015/js-css-div-hd-tab

js实现超简单的展开、折叠目录代码_javascript技巧

本文实例讲述了js实现超简单的展开.折叠目录代码.分享给大家供大家参考.具体如下: 这里介绍一款超简单的目录,展开菜单代码,鼠标点击即可展开,再次点击即可合拢,类似树形菜单的功能,网上见过很多,不多做介绍了,欢迎参考. 运行效果截图如下: 在线演示地址如下: http://demo.jb51.net/js/2015/js-show-hidden-list-menu-codes/ 具体代码如下: <title>可折叠展开的简单目录</title> <style> div{

JS实现的文字与图片定时切换效果代码_javascript技巧

本文实例讲述了JS实现的文字与图片定时切换效果代码.分享给大家供大家参考.具体如下: 这是近来门户们都喜欢用的特效,左侧是一个大图片,右侧是对应文字,鼠标移动时,对应行的文字会变化,图片也相应的切换,如果没有鼠标动作时,它会自己播放,播放时间可调整,个人感觉挺不错的导航效果. 运行效果截图如下: 在线演示地址如下: http://demo.jb51.net/js/2015/js-txt-pic-time-cha-tab-codes/ 具体代码如下: <head> <meta http-e

js+div实现文字滚动和图片切换效果代码_javascript技巧

本文实例讲述了js+div实现文字滚动和图片切换效果代码.分享给大家供大家参考.具体如下: 这里演示js+div文字滚动和图片切换代码,为了演示方便,去掉了图片调用,用数字代替了,用时候再加上就可以了,本效果实现了两种效果,Div切换,TAB切换,和文字滚动,鼠标移上后文字停止滚动,两种功能可任意剥离出来,这不影响代码使用. 运行效果截图如下: 在线演示地址如下: http://demo.jb51.net/js/2015/js-div-txt-pic-scroll-cha-style-codes

js替换字符串中所有指定的字符(实现代码)_javascript技巧

第一次发现JavaScript中replace() 方法如果直接用str.replace("-","!") 只会替换第一个匹配的字符. 而str.replace(/\-/g,"!")则可以全部替换掉匹配的字符(g为全局标志). replace() The replace() method returns the string that results when you replace text matching its first argumen

js实现类似菜单风格的TAB选项卡效果代码_javascript技巧

本文实例讲述了js实现类似菜单风格的TAB选项卡效果代码.分享给大家供大家参考.具体如下: 这是一款基于javascript实现的一组简洁选项卡代码,类似菜单风格的TAB选项卡,没有使用图片,因此有些地方处理的还不太到位,不介意使用图片修饰的朋友可以再次美化这上选项卡,风格有点类似于菜单. 运行效果截图如下: 在线演示地址如下: http://demo.jb51.net/js/2015/js-menu-style-tab-nav-codes/ 具体代码如下: <html xmlns="ht

JS基于VML技术实现的五角星礼花效果代码_javascript技巧

本文实例讲述了JS基于VML技术实现的五角星礼花效果代码.分享给大家供大家参考,具体如下: 这里演示的五角星礼花,基于HTML+js+VML技术共同编写实现,打开页面即可看到礼花绽放效果,五角星符号可以换成其它的符号,本效果可轻松修改成烟花升空爆炸特效,不过你要事先制作一个烟花的GIF小图,然后替换掉五角星. 运行效果截图如下: 在线演示地址如下: http://demo.jb51.net/js/2015/js-vml-wjx-style-demo/ 具体代码如下: <HTML> <HE

JS实现黑色风格的网页TAB选项卡效果代码_javascript技巧

本文实例讲述了JS实现黑色风格的网页TAB选项卡效果代码.分享给大家供大家参考.具体如下: 这是一款网页TAB选项卡JS代码,黑色超酷的风格,看了后你会喜欢的,很熟悉很经典的风格,似曾相识的感觉,希望大家喜欢. 运行效果截图如下: 在线演示地址如下: http://demo.jb51.net/js/2015/js-black-style-web-tab-demo/ 具体代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transition

使用JS实现图片展示瀑布流效果的实例代码_javascript技巧

不知大家有没有发现,一般的图片展示网站都会使用瀑布流效果,所谓的瀑布流 就是网站内的图片不会一下子全缓存出来,而是等你滚动到一定的距离的时候, 下面的图片才会继续缓存,并且图片也是随机出现的,只是宽度一样,高度并不 一样,高高低低就像瀑布一样,所以叫做瀑布流效果.下面我把代码给大家,大家 随便下几张图片试试. <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&qu