JavaScript學習筆記9 JS簡易導航高亮的方法

首先看下效果(link

實現(xiàn)的方法韓式很簡單的,主要用到了indexOf()方法來對比當前頁面鏈接與導航中哪個鏈接的href有相同的部分,為相同的那個鏈接加上一個高亮的css。只是學習和測試,所以寫的比較簡陋,沒有加太多的樣式,方便理解颠毙。

html部分

html只是用了一個nav標簽,為了方便觀察把a標簽寫進了li中砂碉,按理說nav與li中間應該再插入一個ul標簽的蛀蜜,但我省事沒有加,但在實際應用中增蹭,加上ul標簽能更多的空間來發(fā)揮css滴某,所以建議加上。

    <nav>
        <li><a href="index.html">Home</a></li>
        <li><a href="about.html">About Me</a></li>
        <li><a href="blog.html">Blog</a></li>
        <li><a href="images.html">Images</a></li>
    </nav>

javascript部分

    //創(chuàng)建一個啟動器函數(shù)
    function addLoadEvent(func){
        var oldonload = window.onload;
        if (typeof window.onload !="function") {
            window.onload = func;
        }else{
            window.onload = function(){
                oldonload();
                func();
            }
        }
    }
    
    //創(chuàng)建一個高亮函數(shù)
    function highlight(){
        //判斷瀏覽器是否支持getElementsByTagName和getElementById方法滋迈,不支持停止運行
        if (!document.getElementsByTagName) return false;
        if (!document.getElementById) return false; 
        
        //獲取導航標簽
        var nav = document.getElementsByTagName("nav");
        
        //獲取第一個導航中的a標簽(如果頁面中有兩個導航霎奢,都是nav標簽的話,根據(jù)節(jié)點位置數(shù)字選擇饼灿,nav[0]代表頁面中第一個nav) 
        var alink = nav[0].getElementsByTagName("a");
        
        //將nav中的a標簽循環(huán)取出來
        for (var i=0; i<alink.length;i++) {
        
            //創(chuàng)建一個新的變量
            var links;
            
            for (var i=0; i<alink.length;i++) {
            
            //循環(huán)取出a標簽中href的字符串
                links=alink[i].getAttribute("href");
                
                //判斷這個字符串是否與這個頁面中的鏈接有相同的字符
                if (window.location.href.indexOf(links)!=-1) {
                
                    //將相同a標簽加上一個高亮的class
                    alink[i].className="high";
                }       
            }
        }       
    }
    
    //頁面加載完畢后幕侠,自動執(zhí)行highlight函數(shù)
    addLoadEvent(highlight());

css部分

css部分主要是定義一下a標簽的顏色和一個高亮顯示的類。

    a,a:active,a:visited,a:hover{color:black;}
    .high{color: red;}
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末碍彭,一起剝皮案震驚了整個濱河市晤硕,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌庇忌,老刑警劉巖舞箍,帶你破解...
    沈念sama閱讀 216,324評論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異漆枚,居然都是意外死亡创译,警方通過查閱死者的電腦和手機抵知,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,356評論 3 392
  • 文/潘曉璐 我一進店門墙基,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人刷喜,你說我怎么就攤上這事残制。” “怎么了掖疮?”我有些...
    開封第一講書人閱讀 162,328評論 0 353
  • 文/不壞的土叔 我叫張陵初茶,是天一觀的道長。 經(jīng)常有香客問我浊闪,道長恼布,這世上最難降的妖魔是什么螺戳? 我笑而不...
    開封第一講書人閱讀 58,147評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮折汞,結果婚禮上倔幼,老公的妹妹穿的比我還像新娘。我一直安慰自己爽待,他們只是感情好损同,可當我...
    茶點故事閱讀 67,160評論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著鸟款,像睡著了一般膏燃。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上何什,一...
    開封第一講書人閱讀 51,115評論 1 296
  • 那天组哩,我揣著相機與錄音,去河邊找鬼处渣。 笑死禁炒,一個胖子當著我的面吹牛,可吹牛的內容都是我干的霍比。 我是一名探鬼主播幕袱,決...
    沈念sama閱讀 40,025評論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼悠瞬!你這毒婦竟也來了们豌?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 38,867評論 0 274
  • 序言:老撾萬榮一對情侶失蹤浅妆,失蹤者是張志新(化名)和其女友劉穎望迎,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體凌外,經(jīng)...
    沈念sama閱讀 45,307評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡辩尊,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,528評論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了康辑。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片摄欲。...
    茶點故事閱讀 39,688評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖疮薇,靈堂內的尸體忽然破棺而出胸墙,到底是詐尸還是另有隱情,我是刑警寧澤按咒,帶...
    沈念sama閱讀 35,409評論 5 343
  • 正文 年R本政府宣布迟隅,位于F島的核電站,受9級特大地震影響,放射性物質發(fā)生泄漏智袭。R本人自食惡果不足惜奔缠,卻給世界環(huán)境...
    茶點故事閱讀 41,001評論 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望吼野。 院中可真熱鬧添坊,春花似錦、人聲如沸箫锤。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,657評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽谚攒。三九已至阳准,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間馏臭,已是汗流浹背野蝇。 一陣腳步聲響...
    開封第一講書人閱讀 32,811評論 1 268
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留括儒,地道東北人绕沈。 一個月前我還...
    沈念sama閱讀 47,685評論 2 368
  • 正文 我出身青樓,卻偏偏與公主長得像帮寻,于是被迫代替她去往敵國和親乍狐。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,573評論 2 353

推薦閱讀更多精彩內容

  • 轉載請聲明 原文鏈接地址 關注公眾號獲取更多資訊 第一部分 HTML 第一章 職業(yè)規(guī)劃和前景 職業(yè)方向規(guī)劃定位...
    程序員poetry閱讀 16,548評論 32 459
  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案固逗? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標簽默認的外補...
    _Yfling閱讀 13,748評論 1 92
  • 教程整理自慕課網(wǎng)(原文部分錯誤在這篇文章得到修改浅蚪,本文版本Bootstrap3.3.7)。 框架簡介 Bootst...
    小小奶狗閱讀 2,470評論 0 5
  • 前言 轉自博客園 原文 一烫罩、簡單介紹一下什么是瀏覽器內核惜傲。瀏覽器最重要或者說核心的部分是“Rendering En...
    吳晗君閱讀 3,639評論 1 30
  • 一 現(xiàn)在真是一個斷舍離的時代 不僅我們個人在斷舍離,一些公司也在斷舍離 這不贝攒,離3月8號羅振宇宣布《羅輯思維》視頻...
    老汪這個人閱讀 327評論 0 0