2012-04-26 107 views
1

我需要你的幫助!jquery鏈接到特定標籤

我有我的網站中的jquery的選項卡功能。它運作良好。

以下是JavaScript中<頭>

<script type="text/javascript"> 
// When the document loads do everything inside here ... 
$(document).ready(function(){ 
    // When a link is clicked 
    $("a.tab").click(function() { 
    // switch all tabs off 
    $(".active").removeClass("active"); 
    // switch this tab on 
    $(this).addClass("active"); 
    // slide all content up 
    $(".content").slideUp(); 
    // slide this content up 
    var content_show = $(this).attr("title"); 
    $("#"+content_show).slideDown(); 
    }); 
}); 
</script> 

和HTML源在這裏!

<ul id="tabs"> 
    <li><a href="#" title="type1" class="tab active">type1</a></li> 
    <li><a href="#" title="type2" class="tab">type2</a></li> 
</ul> 
<section id="type1" class="content"> 
    <p>contents1contents1contents1contents1contents1</p> 
</section> 
<section id="type2" class="content content_2"> 
    <p>contents2contents2contents2contents2</p> 
</section> 

但我需要鏈接一個按鈕到特定的選項卡。 類別歸檔頁面中有按鈕,當用戶單擊該按鈕時,頁面將打開,並顯示第二個選項卡中的內容,id爲「type2」。

以上來源被this page 所指,這裏是我正在處理的the page

我在等待您的建議!

回答

1

假設你的HTML文件的上方名爲index.html,你可以創建一個鏈接,如:

<a href="index.html#!type2">click</a> 

然後:

$(document).ready(function(){ 
    function doTab() { 
     $(".active").removeClass("active"); 
     $(this).addClass("active"); 
     $(".content").slideUp(); 
     var content_show = $(this).attr("title"); 
     $("#"+content_show).slideDown(); 
    } 

    // When a link is clicked 
    $("a.tab").click(doTab); 

    if (window.location.hash) { 
     $('a[title="' + window.location.hash.substring(2) + '"]').click(); 
    } 
}); 
+0

感謝您的建議!有用!!! 但是當它打開鏈接的頁面時,頁面的位置不在頂部,而是在頁面的某處。 我認爲它受到該部分ID的位置影響。 你能幫我解決嗎? – restard 2012-04-26 05:32:45

+0

已更新。不要忘記upvote並檢查正確的答案。 – 2012-04-26 16:08:32

+0

恩......這對我不起作用。 這個網站是由WordPress的經營。所以我沒有一個HTML頁面。 並且該部分的ID以日語命名。那些事情可能會造成麻煩? 在這裏,我會鏈接[頁面](http://hikarimoushikomi.com/east/ryoukin/)。 如果您需要測試,在頁面的中心,您可以找到小的「測試」,然後單擊它。 – restard 2012-04-27 01:36:08