2016-05-12 54 views
0

我的網站建設者有一個通用的選項卡功能,但我不喜歡它,所以我想我會學習如何建立一個自己。我比現在的腳本更適合使用CSS,並且它顯示了我創建的內容,它看起來如何我想要的,但對於點擊還沒有起作用。創建一個標籤,但不會對click - jQuery問題/新手

這裏是的jsfiddle:https://jsfiddle.net/6oq3t9ev/1/

<ul class="tab_conts" id="recent" style="display: block;"> 
    <li class="tab_cont"> 
    <a href="/test" class="tab_cont_link">Test</a> 
    <a> 
     <desc>Testing</desc> 
    </a> 
    </li> 
    <li class="tab_cont"> 
    <a href="/test" class="tab_cont_link">Test</a> 
    <a> 
     <desc>Testing</desc> 
    </a> 
    </li> 
</ul> 

<ul class="tab_conts" id="new" style="display: none;"> 
<li class="tab_cont"> 
    <a href="/test" class="tab_cont_link">Test</a> 
    <a> 
     <desc>Testing</desc> 
    </a> 
    </li> 
    <li class="tab_cont"> 
    <a href="/test" class="tab_cont_link">Test</a> 
    <a> 
     <desc>Testing</desc> 
    </a> 
    </li> 
    <li class="tab_cont"> 
    <a href="/test" class="tab_cont_link">Test</a> 
    <a> 
     <desc>Testing</desc> 
    </a> 
    </li> 
</ul> 

$(document).on("ready int:ready", function() { 
var e = $(".tab_name"), 
    t = $(".tab_conts").hide(); 
e.prependTo(".tabs-cn"), e.click(function(n) { 
    n.preventDefault(); 
    var i = $(this), 
    r = e.index(i); 
    e.removeClass("tab_name-active"), i.addClass("tab_name-active"), t.hide().eq(r).show() 
}), e.first().click() }) 
+0

你應該可以做幾乎完全CSS的事情,然後只需要使用JS移動'selected'標籤即可。 – DBS

回答

0

像這樣的東西應該做的伎倆:

$(document).ready(function(){ $('.tab_name').on('click',function(){ var href = $(this).attr('href'); $('.tab_conts').css({'display':'none'}); $(href).css({'display':'block'}) }); });

PS。確保你包含jquery在你的腦海中

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.2/jquery.min.js"></script> 
+0

你究竟在做什麼'href' var?你似乎正在分配一個(url)字符串,然後試圖將它用作JQuery選擇器? (這實際上不應該選擇任何東西),我想你可能已經在這個答案中搞砸了。 – DBS

+0

查看Jsfiddle(https://jsfiddle.net/6oq3t9ev/1/),他使用'href'來定義哪些標籤應該處於活動狀態。這就是爲什麼我將它用作選擇器。 –