用js查找法實現當前欄目的高亮顯示的代碼

當前欄目高亮顯示
       JS判斷當前URL對當前欄目高亮顯示,重點是用到了indexOf來判斷兩個字符串中第一次出現的位置,若是沒有出現就返回-1,出現就返回
其它,並與返回其它結果的那個字符串所在元素定義一個class.

HTML html

複製代碼 代碼以下:

<div id="nav">  
<ul>  
<li><a href="http://www.jb51.net /html/list/index_127.htm" title="資訊中心"><span>資訊中心</span>& lt;/a></li> 
<li><a href="http://www.jb51.net/html /list/index_1.htm" title="網絡編程"><span>網絡編程</span></a& gt;</li> 
<li><a href="http://www.jb51.net/html/list /index_104.htm" title="數據庫"><span>數據庫</span></a>& lt;/li> 
<li><a href="http://www.jb51.net/html/list /index_96.htm" title="腳本專欄"><span>腳本專欄</span></a>& lt;/li> 
<li><a href="http://www.jb51.net/html/list /index_7.htm" title="實用技巧"><span>實用技巧</span></a>& lt;/li> 
<li><a href="http://www.jb51.net/html/list /index_84.htm" title="軟件編程"><span>軟件編程</span></a>& lt;/li> 
<li><a href="http://www.jb51.net/html/list /index_8.htm" title="網頁製做"><span>網頁製做</span></a>& lt;/li> 
<li><a href="http://www.jb51.net/html/list /index_86.htm" title="操做系統"><span>操做系統</span></a>& lt;/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>& lt;/a></li> 
<li><a href="http://www.jb51.net/html /list/index_99.htm" title="免費資源"><span>免費資源</span></a& gt;</li> 
<li><a href="http://www.jb51.net/html/list /index_54.htm" title="關於咱們"><span>關於咱們</span></a>& lt;/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中出現。如有的話,就表
明是當前鏈接,那麼就修改當前鏈接的樣式。這就實現了當前欄目高亮顯示,當前欄目高亮顯示是一個很實用的技巧,在增長用戶體驗方面尤
其有好處。但在實用過程當中,可能須要注意一些細節問題,好比搜索吧的博客是用外鏈的方式來鏈接的,那麼在處理的時候,點了這個外鏈的
時候是否高亮呢?這裏也只是我以爲當前欄目高亮顯示時可能出現的問題稍微說一下,說不定你已經有解決方法了。瀏覽器

相關文章
相關標籤/搜索