jQuery选项卡 - 获取之前选定选项卡的索引
jQuery 1.7.1 - 我想获得先前选定选项卡的索引。例如:如果我从第一个选项移到第三个选项卡,我想将先前选择的选项卡索引设置为0.如何实现此目的?我试过this,但是没有奏效。jQuery选项卡 - 获取之前选定选项卡的索引
我有下面的标记,
<div id="tabs">
<ul>
<li><a href="t1" title="content">Gallery</a></li>
<li><a href="t2" title="content">Polls</a></li>
<li><a href="t3" title="content">Events</a></li>
</ul>
<div id="content"></div>
</div>
的Javascript,
$('#tabs').tabs( {
select: function(e, ui) {
var t = $(e.target);
alert("Index " + t.data('selected.tabs'));
return true;
}});
通过选择或显示回调开除你只能得到当前选中的标签,用ui.index
的时间。你最好的选择是跟踪该索引并在切换标签页时更新它,这会在更新之前告诉你之前的索引。
var previousIndex = 0;
$('#tabs').tabs( {
select: function(e, ui) {
//do whatever you need to do with previousIndex
alert("The previously selected tab index was " + previousIndex);
//track the new index
previousIndex = ui.index;
}
});
谢谢@Parrots。我遵循你的建议,它的工作原理。我还有一个问题,当我加载页面时,默认情况下我打开一个选项卡。所以我有以下代码$ tabs.tabs('select',
不确定,我会假设它会调用回调。最坏的情况我认为你的解决方法是有道理的。 – Parrots 2012-01-17 02:07:30
以下代码也适用,var previousIndex = 0; 。 \t $( '#标签')的选项卡({ \t \t选择:功能(即,UI){选择 \t \t \t VAR = $ tabs.tabs( '选项', '选择'); \t \t \t \t previousIndex = selected; } \t});任何人对此有任何想法? – SyAu 2012-01-18 22:28:35
您可以选择使用 $(this).tabs('option', 'selected')
:选项
像
$("#tabs").tabs({
select: function(event, ui){
console.log($(this).tabs('option', 'selected')}
)}
});
显示一些代码。最好是标记和JavaScript。说明问题的http://jsfiddle.net样本也很棒。 – 2012-01-16 23:28:13