2016-09-21 3 views
0

私は今日解決策を見つけることができなかった一見単純な問題があります。 w3schoolsで使用するためのタブなどのJavaScriptタブの下に要素を自動的に開くブックマーク(example.com/somepage #mybookmark)を作成するにはどうすればよいですか。JavaScriptタブのHTMLブックマークアンカーを作成する方法

私は例えば、タブを形成<li>要素にいくつかのid sを適用しようとしました:

<li id="mybookmark"><a href="#" class="tablinks" onclick="openCity(event, 'London')">London</a></li> 

、さらにはアンカー名を、例えば:

<li><a name="mybookmark" href="#" class="tablinks" onclick="openCity(event, 'London')">London</a></li> 

が、私が得た最高の結果これまでのところ、example.com/somepage#mybookmarkを試してみると、タブにハイライト表示されていましたが、実際に欲しい内容です。

答えはJavaScriptのコードにあると思いますが、誰かがどのように見えるかを提案できますか?

$(function() { 
    $(".tab-content").hide().first().show(); 
    $(".yourNav li:first").addClass("active"); 

    $(".yourNav a").on('click', function (e) { 
    e.preventDefault(); 
    $(this).closest('li').addClass("active").siblings().removeClass("active"); 
    $($(this).attr('href')).show().siblings('.tab-content').hide(); 
}); 

    var hash = $.trim(window.location.hash); 
    if (hash) $('.inner-nav a[href$="'+ hash + '"]').trigger('click'); 
}); 

基本的にあなたが#を形成したURLに基​​づいてタブの.click()を強制することになります。

+1

ページの読み込み時にURLハッシュを読み、適切なJSを実行する必要があります。 – DBS

+0

Bootstrapのタブを試してみてください。チュートリアルはこちら---> http://www.tutorialrepublic.com/twitter-bootstrap-tutorial/bootstrap-tabs.php –

答えて

1

はこのような何かを試してみてください。あなたが既に持っていると言ったトップの部分、つまりタブはすべて開かれており、そのすべては、var hash =が宣言されている2番目の部分です。私に知らせて幸運を知らせてください。

+0

お返事ありがとうございます。残念ながら、私はそれを動作させることはできませんが、リクエストに#がある場合は、タブをクリックするという原則を理解しています。ここで私のJS関数は、うまく動作します(タブがブックマークとして要求されている場合、タブの内容は表示されません):http://pastebin.com/wwj5eSJj任意の考えですか? – Chris

関連する問題