2017-03-06 38 views
0

我在其中一個頁面中實現了「Tab」功能。以下是代碼:如果您來自特定網站或鏈接,如何更改頁面元素的CSS類?

$(document).ready(function() { 
 
    $('ul.tabs li').click(function() { 
 
    var tab_id = $(this).attr('data-tab'); 
 
    $('ul.tabs li').removeClass('current'); 
 
    $('.tab-content').removeClass('current'); 
 
    $(this).addClass('current'); 
 
    $("#" + tab_id).addClass('current'); 
 
    }) 
 
})
.tab.current { 
 
    color: red; 
 
} 
 

 
.tab-content { 
 
    display: none; 
 
} 
 

 
.tab-content.current { 
 
    display: block; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script> 
 
<ul class="tabs"> 
 
    <li class="tab current" data-tab="tab-1">Overview</li> 
 
    <li class="tab" data-tab="tab-2">Get started</li> 
 
</ul> 
 

 
<article id="tab-1" class="tab-content current">TAB 1</article> 
 
<article id="tab-2" class="tab-content">TAB 2</article>

它可以完美的,但只有在這個頁面。我想要實現的是從另一個頁面(index.html)到這個(features.html)的鏈接,並選擇了特定的選項卡。

是否有任何簡單的方法來更新我的功能來實現這種行爲?

Here is a codepen link with the code.

+0

我認爲你可以使用的標籤ID作爲URL中的#,這將意味着,當你進入該頁面,正確的標籤應該加載(如果您正在使用[jQuery的標籤](https://jqueryui.com/tabs/))。如果不是,那麼你將需要編寫自己的函數來讀取URL中的任何#並根據它選擇標籤 – Pete

+0

您可以使用'queryParameters'或'cookies'或'localStorage'或'sessionStorage'來傳遞一個值頁面到另一個。然後在第二頁上,讀取該值並相應地處理 – Rajesh

+0

[在多個html頁面之間共享變量]的可能重複(http://stackoverflow.com/questions/16264253/sharing-a-variable-between-multiple-html-pages ) – Rajesh

回答

0

實施例裏Get startedfeature.html和列表Overviewindex.html。你可以做的是把類current放在列表數據標籤和文章ID tab-2feature.html反正它會刪除類,當你點擊列表overview

$(document).ready(function() { 
 
    $('ul.tabs li').click(function() { 
 
    var tab_id = $(this).attr('data-tab'); 
 
    $('ul.tabs li').removeClass('current'); 
 
    $('.tab-content').removeClass('current'); 
 
    $(this).addClass('current'); 
 
    $("#" + tab_id).addClass('current'); 
 
    }) 
 
});
.tab.current { 
 
    color: red; 
 
} 
 

 
.tab-content { 
 
    display: none; 
 
} 
 

 
.tab-content.current { 
 
    display: block; 
 
} 
 

 
li { 
 
    cursor: pointer; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<ul class="tabs"> 
 
    <li class="tab" data-tab="tab-1">Overview</li> 
 
    <li class="tab current" data-tab="tab-2">Get started</li> 
 
</ul> 
 

 
<article id="tab-1" class="tab-content">TAB 1</article> 
 
<article id="tab-2" class="tab-content current">TAB 2</article>

+0

謝謝Mark,但這並不能解決我的問題,因爲我需要能夠從外部頁面鏈接**兩個製表符**。我在主導航欄中有一個鏈接來導航到feature.html,它應該顯示「Overview」選項卡。此外,我還在主頁的精選部分提供了另一個鏈接,導航到features.html,但應顯示「開始」選項卡。 –

相關問題