私はタブがあり、アドレスバーに貼り付けると各タブのURLに正しい/アクティブなタブが表示されるようにする必要があります。jQuery:「ページジャンプなし」のURLを持つタブ
スクリプト:
$(function() {
$('.tabs span').click(function(){
switch_tabs($(this));
return false;
});
switch_tabs($('.defaulttab'));
});
function switch_tabs(obj) {
$('.tab-content').hide();
$('.tabs span').removeClass("selected");
var id = obj.attr("rel");
$('#'+id).show();
obj.addClass("selected");
}
はHTML:
<ul class="tabs">
<li><a href="#a"><span rel="a" class="defaulttab">A</span></a></li>
<li><a href="#b"><span rel="b">B</span></a></li>
<li><a href="#c"><span rel="c">C</span></a></li>
<li><a href="#d"><span rel="d">D</span></a></li>
<li><a href="#e"><span rel="e">E</span></a></li>
</ul>
<div class="tab-content" id="a">content</div>
<div class="tab-content" id="b">content</div>
<div class="tab-content" id="c">content</div>
<div class="tab-content" id="d">content</div>
<div class="tab-content" id="e">content</div>
だから、誰かが例えば自分のブラウザに "http://www.domain.com/aboutus/page#c" を貼り付けた場合、ブラウザがそのページに行き、タブCがアクティブですが、ページがジャンプしません。
これは意味がありますか?
ありがとうございました。
Javascriptが停止することができますe.preventDefault(); 'e'はクリックイベントオブジェクトです – Webnet
はい、あなたはリンク上で*をクリックしたときにそれを行うことができますが、誰かがURLを置くかどうかを話していますhttp: /www.domain.com/page#cをブラウザに追加します。 – simshaun
完全なURLを提供する必要がありますが、ページにジャンプしてタブに移動することができます。ありがとう。 –