[英]Jquery UI 1.10 - Getting the index of a tab inside an accordion
因此,我有一个JQuery UI手风琴,每个折叠内都有一些选项卡。 我试图在打开的手风琴折叠中获取当前打开的选项卡的索引。 我有一个可以在早期版本的JQuery中使用的解决方案:
var active_tab = $(".accordion.ui-accordion-content-active.tabs").find("div:not(.ui-tabs-hide)").index()-1;
但是,由于我更新了JQuery版本,因此无法使其正常工作,它总是给我一个“ -2”。
我也尝试过这样的事情:
var curTab = $('.accordion .ui-accordion-content-active .ui-tabs-active');
active_tab = curTab.index();
但这又给了我-1,与选择的选项卡无关。
有一个的jsfiddle 这里 ,展示了这种行为。
为了清楚起见,我需要能够记住两次刷新之间的页面状态。 因此,我需要活动的手风琴索引和活动的tab索引,然后将它们放入cookie中并检查刷新。 然后打开适当的手风琴和标签,页面看起来与刷新前的一样。 任何提示将不胜感激。 预先感谢!
您需要使用jQuery UI为您找到活动的手风琴和制表符的适当功能( active
选项):
var activeAccordionIndex = $( ".accordion" ).accordion( "option", "active");
var activeTabIndex = $(".accordion > div:eq(" + accordionIndex + ")").find(".tabs").tabs( "option", "active");
JAVASCRIPT:
$( ".accordion" ).accordion({
active: false,
heightStyle: "content",
collapsible: true
});
$( ".tabs" ).tabs({
activate: function( event, ui ) {
active_tab = ui.newTab.index();
}
});
演示: http : //jsfiddle.net/dirtyd77/NALMd/4/
希望这可以帮助!
根据您提供的jsFiddle代码,您必须像这样更改它:
var curTab = $('.accordion h3.ui-state-active');
active_tab = curTab.index('h3');
首先,我们选择活动标签,然后为其获取正确的索引
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.