【发布时间】:2015-04-18 22:27:56
【问题描述】:
我有一个带有两个选项卡的简单引导导航,其标记如下所示。
<ul class="nav nav-tabs">
<li class="active"><a data-toggle="tab" href="#sectionA">Section A</a></li>
<li><a data-toggle="tab" href="#sectionB">Section B</a></li>
</ul>
<div class="tab-content">
<div id="sectionA" class="tab-pane fade in active">
<p>Section A content…</p>
</div>
<div id="sectionB" class="tab-pane fade">
<p>Section B content…</p>
</div>
</div>
我想要的是每个标签都有深层链接。因此,我想要 example.com/contentA 和 example.com/contentB,而不是 #sectionA 和 #sectionB。
<ul class="nav nav-tabs">
<li class="active"><a data-toggle="tab" href="example.com/contentA">Content A</a></li>
<li><a data-toggle="tab" href="example.com/contentB">Content B</a></li>
</ul>
<div class="tab-content">
<div id="contentA" class="tab-pane fade in active">
<p>ContentA content…</p>
</div>
<div id="contentB" class="tab-pane fade">
<p>ContentB content…</p>
</div>
</div>
这一切都是为了给搜索引擎爬虫提供深度链接。然后我将使用 javascript 来处理用户点击。比如:
$('a').on("click", function (e) {
var href = $(this).attr("href");
history.pushState(null, null, href);
// Show clicked tab here + associated content
$('do something to show clicked tab here')...
e.preventDefault();
});
由于我需要在我的 javascript sn-p 中同时切换到正确的选项卡和内容,所以这段代码看起来如何?
【问题讨论】:
标签: jquery twitter-bootstrap tabs