我在我的应用程序中使用Bootstrap pills:
<div class="container">
<ul class="nav nav-pills">
<li class="active"><a data-target="#home" data-toggle="tab">Home</a></li>
<li><a href="#about" data-toggle="tab">About</a></li>
<li><a href="#contacts" data-toggle="tab">Contacts</a></li>
</ul>
</div>
<div class="tab-content">
<div class="tab-pane active" id="home">Home</div>
<div class="tab-pane" id="about">About</div>
<div class="tab-pane" id="contacts">Contacts</div>
</div>
为了在页面重新加载后保持在同一个标签页上,我使用以下函数:
$(function() {
$('a[data-toggle="tab"]').on('shown.bs.tab', function (e) {
localStorage.setItem('lastTab', $(this).attr('href'));
});
var lastTab = localStorage.getItem('lastTab');
if (lastTab) {
$('[href="' + lastTab + '"]').tab('show');
}
});
问题在于页面重新加载后,第一个选项卡会在1秒钟内变为活动状态,然后跳转到实际的活动选项卡。我能否保持当前选项卡而不出现这种“跳跃”现象?