1

我一直在使用这里找到的代码来制作可滚动的标签http://jsfiddle.net/mekwall/dECtZ/。它工作得非常好,但我在尝试默认初始选定选项卡时遇到了问题。

该选项卡超出了显示的选项卡范围(加载时显示了 13 个选项卡中的 5 个,我选择了加载时选择的第 8 个选项卡)。

请在此处查看问题示例:http: //jsfiddle.net/chriscdk/cf7yvLfz/

我希望我可以在插件中使用一些东西,

$(function() {
    $("#tabs1").tabs({
        scrollable: true,
        changeOnScroll: false,
        selected:8
    });
});

但我找不到任何查看 JQuery API 的东西。

4

1 回答 1

1

查看该小部件扩展的构造函数,它提供了一个scrollTo函数。不幸的是,该功能并未向用户公开。所以你可以添加一行来暴露它:

this.scrollTo = scrollTo;

然后,您可以以通常的方式调用它:

var scrollValue = 200, delay = 0;
// you probably want to calculate a scrollValue from the default tabs'
// width and selection number instead of hardcoding a value
$("#tabs").tabs("scrollTo", scrollValue, delay);

值得考虑的是,有意公开此功能。原作者可能并不打算让人们像刚刚描述的那样进行令人讨厌的黑客攻击。正确的方法是编写自己的(可能基于原始?)滚动功能,并用它扩展小部件。

但是,如果您不太关心未来的维护,您可以使用这个两行黑客并仔细观察未来的任何变化。

这是你的小提琴更新:http: //jsfiddle.net/xfhzyece/

于 2014-12-19T14:48:29.950 回答