繁体   English   中英

jQuery UI 1.10-获取手风琴中的选项卡的索引

[英]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");

工作实例

使用jQuery Tab的.activate()事件

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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM