1
我創建了一個simple plugin tabs plugin for jQuery that can optionally cycle through the various content panes。jQuery循環標籤:更好的循環方式?
我覺得我騎自行車的方式非常好(有一點開銷),並且正在尋找一些替代方案來完成它。
少數人的事情,我不等等是:
- 我必須存儲每個選項卡(記憶?)數組
- 我保持一個迭代器和計數,並執行數學以確定下一個週期
該插件這樣初始化的數組索引:$(selector).jqtabs()
或$(selector).jqtabs(4000)
(4000 =毫秒週期時間)。
任何更好的想法?
(function ($) {
$.fn.jqtabs = function (cycleSpeed) {
return this.each(function() {
var all = this;
var cycleIterator = 1;
var numberOfTabs = 0;
var allTabs;
/* Tab Click
=====================*/
$(".navigation li", this).click(function() {
changeTo(this)
});
/* Initiate Cycle
=====================*/
if (cycleSpeed) {
//array of tabs
allTabs = $(".navigation li", all);
numberOfTabs = allTabs.length;
setInterval(function() {
var tabIndex = (cycleIterator % numberOfTabs);
var tabToCycle = allTabs[tabIndex];
changeTo(tabToCycle);
cycleIterator++;
}, cycleSpeed);
}
/* changeTo(tab) Function
=====================*/
var changeTo = function (tab) {
if (!$(tab).hasClass("active")) {
$(".panel", all).hide();
$("#" + $(tab).attr("title")).fadeIn('fast', function() {
$(".active", all).removeClass("active");
$(tab).addClass("active");
});
}
};
});
}
})(jQuery);
挖三元操作符..我經常忘記,JavaScript支持那些 –