我正在使用Django和jQuery EasyTabs Plugin。此插件使用指向容器ID的锚点来创建选项卡,如下所示:
<ul class='etabs'>
<li class='tab'><a href="#tabs1">Tab 1</a></li>
<li class='tab'><a href="#tabs2">Tab 2</a></li>
</ul>
<div id="tabs1">
<h2>This is the first tab</h2>
</div>
<div id="tabs2">
<h2>This is the second tab</h2>
</div>
因此,当您点击链接Tab 1
时,容器tabs2
会隐藏,并显示tabs1
。
我的应用程序特别在第一个选项卡中加载一些组件,当其他选项卡被激活时(它触发事件),其中一些组件被移动到新活动选项卡的容器中。结构很复杂,并且首先检查哪个选项卡处于活动状态需要太多代码。有没有办法强迫用户最初站在第一个标签中?
答案 0 :(得分:1)
哈希不会发送到服务器。
相反,您可以使用插件公开的API来设置标签吗? e.g:
$('#outer-container').easytabs('select', '#nested-tab-3');
答案 1 :(得分:1)
我最终需要的(以及我最初寻找的)是window.location
。通过EasyTabs的API选择一个不是第一个选项卡的选项卡显然会触发一个错误,导致两个选项卡的内容同时可见。
在window.location.replace('#desired-tab-id')
函数之前使用$('#tab-container').easytabs()
解决了问题。