2013-04-23 30 views
0

我的網站有一個ID爲#nav的導航。我想根據點擊的導航列表激活一個tabber。導航#nav有這樣一個html: -基於點擊導航鏈接激活jquery tabber

<ul id ="nav"> 
    <li><a href="#tab1">Fred</a></li> 
    <li><a href="#tab2">Thom</a></li> 
    <li><a href="#tab3">Kay</a></li> 
</ul> 

從導航點擊弗雷德的時候,我想激活此在具有這樣

<ul class="tabs">           
     <li><a href="#tab1">Fred</a></li>          
     <li><a href="#tab2">Thom</a></li>  
     <li><a href="#tab3">Kay</a></li>  
</ul> 

和標籤內容,如一個HTML的焊接設備這一點: -

<div id="tab1" class="tab_content">Lorem</div> 
<div id="tab2" class="tab_content">Ipsum</div> 
<div id="tab3" class="tab_content">Dolor</div> 

所以我寫的jQuery的下面一行

$("#nav li").click(function() { 

     var hash = location.hash; 
      var sel = $("ul.tabs li a[href='" + hash + "'], ul#tabs li a[href='" + hash + "']"); 

    if (sel.length) { 

     sel.addClass("active").parent().addClass("active"); //Activate tab 



     $(hash).show(); 
    } 

它不起作用!我如何將onclick事件綁定到它?對不起,我對jquery很新穎。我在本網站上看過以前的例子,當我嘗試使用時,它不起作用。那麼有人可以調整我的代碼/幫我嗎?

+0

你可以創建一個小提琴,顯示您的HTML是什麼樣子點擊過嗎? (即CSS)。我假設某些部分是隱藏起來的,但你並沒有真正付出太多的努力。 – EmmyS 2013-04-24 14:36:51

回答

1

你的jQuery不是問題 - 這是你的HTML。您在click功能中使用了location.hash,但您的導航欄實際上並沒有散列。嘗試修改此:

<ul id ="nav"> 
    <li><a href="tab1">Fred</a></li> 
    <li><a href="tab2">Thom</a></li> 
    <li><a href="tab3">Kay</a></li> 
</ul> 

這樣:

<ul id ="nav"> 
    <li><a href="#tab1">Fred</a></li> 
    <li><a href="#tab2">Thom</a></li> 
    <li><a href="#tab3">Kay</a></li> 
</ul> 
+0

這是一個錯字,我解決了它..你能幫我嗎?還是行不通 – 2013-04-23 21:23:34