如何防止jquery选项卡默认为刷新时的第一个选项卡?

时间:2014-10-07 19:22:42

标签: javascript jquery jquery-ui

我在页面上使用简单的jquery选项卡,其中包含多个选项卡,如下所示:

$("#tabs").tabs();
<s:div id="tabs">
<ul>
  <li><a href="#tabs-1"> Home</a></li>
  <li><a href="#tabs-2">Resources</a></li>
  <li><a href="#tabs-3">hello world</a></li>
</ul>

<s:div id="tabs-1">
     tab one content
</s:div>
<s:div id="tabs-2">
     tab two content
</s:div>
<s:div id="tabs-3">
   tab three content
</s:div>
</s:div>

然而,当我在其他任何标签上并且点击刷新时,它会将我带回第一个标签。我知道默认情况下第一个选项卡是活动的。我甚至尝试使用以下功能来停用活动标签:

$( "#tabs" ).tabs({ active: false });

但即使没有活动标签,它仍然会带我到第一个标签。我怎样才能防止这种情况发生?我希望jquery在刷新页面时不更改选项卡。我确实找到了几个答案但似乎没有任何帮助。任何帮助,将不胜感激。谢谢你提前

1 个答案:

答案 0 :(得分:4)

这应该成为诀窍:

var selected=0;
if(localStorage.currentTab){
    selected=Number(localStorage.currentTab)
}else{
    localStorage.currentTab=0;
}

$("#tabs").tabs({ 
    selected: selected,
    select: function(event, ui) {
        localStorage.currentTab=ui.index
    }
});