需求:如果所有頁面引用同一個頭部導航菜單,點擊欄目后,頁面跳轉的對應頁面,這時導航菜單中該欄目高亮顯示。
導航欄菜單html結構:
<ul id="tabs_nav"> <li><a href="a.html" class="active"></a></li> <li><a href="b.html"></a></li> <li><a href="c.html"></a></li> <li><a href="d.html"></a></li> </ul>
實現:判斷a標簽中href屬性與當前窗口URL是否匹配,匹配則給其添加樣式。
js代碼:
//獲取div下面所有的a標簽(返回節點對象) var myNav = document.getElementById("tabs_nav").getElementsByTagName("a"); //獲取當前窗口的url var myURL = document.location.href; //循環div下面所有的鏈接, for(var i=1;i<myNav.length;i++){ //獲取每一個a標簽的herf屬性 var links = myNav[i].getAttribute("href"); var myURL = document.location.href; //查看div下的鏈接是否包含當前窗口,如果存在,則給其添加樣式 if(myURL.indexOf(links) != -1){ myNav[i].className="active"; myNav[0].className=""; } }