麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > JavaScript > 正文

Tab切換組件(選項卡功能)實例代碼

2019-11-20 21:37:32
字體:
來源:轉載
供稿:網友

直接貼代碼里面有注釋:

復制代碼 代碼如下:

/**
 * 簡單的Tab切換
 * 支持可配置項 如下參數
 */
    function Tab(){
        this.config = {
            type            : 'mouseover',    //類型 默認為鼠標移上去
            autoplay        : true,           // 默認為自動播放
            triggerCls      : '.list',        // 菜單項
            panelCls        : '.tabContent',  // 內容項
            index           : 0,              // 當前的索引0
            switchTo        : 0,              // 切換到哪一項
            interval        : 3000,              // 自動播放間隔時間 默認為3 以s為單位
            pauseOnHover    : true,           // 鼠標放上去是否為暫停 默認為true
            current         : 'current',      // 當前項添加到類名
            hidden          : 'hidden',       // 類名 默認為hidden
            callback        : null            // callback函數
        };

        this.cache = {
            timer : undefined,
            flag  : true
        };
    }

    Tab.prototype = {

        init: function(options){
            this.config = $.extend(this.config,options || {});
            var self = this,
                _config = self.config;
            self._handler();
        },
        _handler: function(){
            var self = this,
                _config = self.config,
                _cache = self.cache,
                len = $(_config.triggerCls).length;
            $(_config.triggerCls).unbind(_config.type);
            $(_config.triggerCls).bind(_config.type,function(){
                _cache.timer && clearInterval(_cache.timer);
                var index = $(_config.triggerCls).index(this);
                !$(this).hasClass(_config.current) &&
                $(this).addClass(_config.current).siblings().removeClass(_config.current);
                $(_config.panelCls).eq(index).removeClass(_config.hidden).siblings().addClass(_config.hidden);

                // 切換完 添加回調函數
                _config.callback && $.isFunction(_config.callback) && _config.callback(index);
            });

            // 默認情況下切換到第幾項
            if(_config.switchTo) {
                $(_config.triggerCls).eq(_config.switchTo).addClass(_config.current).siblings().removeClass(_config.current);
                $(_config.panelCls).eq(_config.switchTo).removeClass(_config.hidden).siblings().addClass(_config.hidden);
            }

            // 自動播放
            if(_config.autoplay) {
                start();
                $(_config.triggerCls).hover(function(){
                    if(_config.pauseOnHover) {
                        _cache.timer && clearInterval(_cache.timer);
                        _cache.timer = undefined;
                    }else {
                        return;
                    }
                },function(){
                    start();
                });
            }
            function start(){
                _cache.timer = setInterval(autoRun,_config.interval);
            }
            function autoRun() {
                if(_config.switchTo && (_config.switchTo == len-1)){
                    if(_cache.flag) {
                        _config.index = _config.switchTo;
                        _cache.flag = false;
                    }
                }
                _config.index++;
                if(_config.index == len) {
                    _config.index = 0;
                }
                $(_config.triggerCls).eq(_config.index).addClass(_config.current).siblings().removeClass(_config.current);
                $(_config.panelCls).eq(_config.index).removeClass(_config.hidden).siblings().addClass(_config.hidden);

            }
        }
    };

頁面上調用方式如下:

復制代碼 代碼如下:

$(function(){
    new Tab().init({
        switchTo: 1,
        callback: function(index){
            console.log(index);
        }
    });
});

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 久久久久99999 | 久久精品国产99国产精品亚洲 | 色播视频在线播放 | 欧美成人精品欧美一级 | 午夜神马电影网 | 在线看一区二区三区 | 高清一区二区在线观看 | 国产午夜电影 | 一级黄色免费观看 | 龙床上的呻吟高h | 日日鲁一鲁视频 | 在线a| 亚洲免费视频一区 | 成人福利视频在线 | 在线看一级片 | 午夜久久视频 | 色七七亚洲 | 蜜桃一本色道久久综合亚洲精品冫 | 中国av免费观看 | videos韩国| 一级片九九 | 国产精品久久久久网站 | 青草久久网 | 亚洲精品成人18久久久久 | 香蕉视频网站在线观看 | 国产亚洲精彩视频 | 日韩午夜片 | 亚洲天堂午夜 | 成人爱爱电影 | 久久欧美亚洲另类专区91大神 | 在线成人免费网站 | 91网站在线观看视频 | 免费特黄 | 久久久中精品2020中文 | 久久久综合视频 | 成人国产综合 | 亚洲热线99精品视频 | 免费久久久久久久 | 欧美成人做爰高潮片免费视频 | 成人三级免费电影 | 黄色成人av在线 |