【发布时间】:2015-04-30 03:01:00
【问题描述】:
我正在使用以下代码来切换选项卡。但问题是如果我将标签 ID 放在带有 # 的 url 中,它不会转到那个特定的标签。
<a href="index.php#tab2">Tab 2</a>
<a href="index.php#tab3">Tab 3</a>
下面是代码
jQuery(document).ready(function() {
jQuery('.tabs .tab-links a').on('click', function(e) {
var currentAttrValue = jQuery(this).attr('href');
// Show/Hide Tabs
jQuery('.tabs ' + currentAttrValue).show().siblings().hide();
// Change/remove current tab to active
jQuery(this).parent('li').addClass('active').siblings().removeClass('active');
e.preventDefault();
});
});
html代码
<ul class="tab-links">
<li class="active"><a style="" href="#tab1">Account</a></li>
<li><a href="#tab2">Jobs Posted</a></li>
<li><a href="#tab3">Messages</a></li>
<li><a href="#tab4">Post A Job</a></li>
</ul>
<div class="tab-content">
<div id="tab1" class="tab active" style="padding-bottom:30px;">
</div>
<div id="tab1" class="tab" style="padding-bottom:30px;">
</div>
<div id="tab1" class="tab" style="padding-bottom:30px;">
</div>
</div>
【问题讨论】:
-
请为您要显示的元素添加 html。最好创建一个演示问题的 JSFiddle。
-
你可以实现 jQuery UI 并使用 tabs() 方法,如下所示stackoverflow.com/questions/578348/…希望这会有所帮助
-
您必须识别您使用 id 显示的元素 - 这就是浏览器如何知道如何将 url 中的哈希与要滚动到的元素相匹配。您还需要一些 jquery 来读取 url 并显示适当的元素并选择适当的选项卡
-
我也添加了 html 代码。 @ekusela
标签: javascript jquery