jQuery Tools 1.2.6选项卡 - initialIndex +历史选项错误

时间:2011-11-01 20:10:54

标签: jquery tabs history jquery-tools

因此,当使用initialIndex(指定要加载的选项卡)和历史插件时,Tabs 1.2.6似乎有一个错误。所以:

$("ul#tabs").tabs("div.panes > div", {
        effect: 'fade',
        initialIndex: 3
    });

完美运作并打开第四个标签.....但是,如果我包括这个:

$("ul#tabs").tabs("div.panes > div", {
            effect: 'fade',
            initialIndex: 3,
            history: true
        });

单击第四个选项卡,然后立即启用第一个选项卡...

有没有人遇到这个bug呢?如果是这样,任何帮助将不胜感激!

更新:

这是一个小提琴:

使用initialIndex http://jsfiddle.net/xAmqj/1/

不使用历史记录(可能是小提琴也限制在他们的应用程序中使用哈希) http://jsfiddle.net/xAmqj/5/

另一个更新(2011年11月11日): 我找到的最简单的解决方案是保留历史记录选项,并取出initialIndex选项。然后在运行制表符脚本之前,将其作为页面上的第一个脚本放置:

window.location.hash = 'yourhashtag';

历史将负责其余部分,并将参与该选项卡。不想在历史中添加一大堆其他代码。懒惰......我知道..但它确实有效。

1 个答案:

答案 0 :(得分:1)

嗯,实际上“历史”像“initialIndex”一样工作,它需要“hash”并将其设置为制表符的initialIndex,所以它不是一个bug,它只是你不能同时使用它们。

如果你看一下JQuery工具文档演示,你可以看到你可以让任何标签开始使用hash标签“like”:

http://flowplayer.org/tools/demos/tabs/history.htm#streaming_tab

你可以看到initialIndex是第三个标签,但没有使用“initialIndex”,只是使用哈希。

你的代码问题是标签工具读取initialIndex并选择第4个标签,然后返回“历史”索引,没有哈希意味着第一个标签,这就是它。

为了确保这一点,将哈希href放在第二个选项卡上,例如href="#sec_tab",然后在页面末尾添加此哈希“#sec_tab”,您将看到第4个选项卡将显示(单击)然后这次不会先移动到第二个标签。