;(function($) {$.fn.waslide = function(settings) {    var _defaultSettings = {        tabClass: 'slideSelector',        contentClass: 'slideBlock',        activeClass: 'active',        activeElement: 'td',		eventType: 'click',		slideNumber: 5,		slideTime: 3    };    var _settings = $.extend(_defaultSettings, settings);    var container = this;    var $tabBlocks = $('.' + _settings.contentClass, container);    var $tabLists = $('.' + _settings.tabClass, container);    var $tabLinks = $('.' + _settings.tabClass + ' a', container);    var tabIdList = [];    var _isPaused = false;    var _currentIndex = 0;    // 取得內容物件的 id    var _getContentId = function ($tabLink) {        return String($tabLink.attr('id')).replace(_settings.tabClass + '_', '');    };    // 切換暫停    var _setPause = function () {        // alert('now:' + _isPaused + '/to:' + !_isPaused);        _isPaused = !_isPaused;    }    // 變換內容物件    var _slide = function (index) {        $tabBlocks.hide();        var id = tabIdList[index];        $('#' + _settings.contentClass + '_' + id).fadeIn();        // activeClass 變換        $(_settings.activeElement + '.' + _settings.tabClass).removeClass(_settings.activeClass);        $('#' + _settings.tabClass + '_' + id).parents(_settings.activeElement).addClass(_settings.activeClass);        _currentIndex = index;    };    // 依序變換內容物件    var _slideShow = function () {        if (_isPaused) {            return false;        }        _currentIndex ++;        if (_currentIndex == _settings.slideNumber) {            _currentIndex = 0;        }        _slide(_currentIndex);    }    // 主程式    var _handler = function() {        // 當沒有內容時，跳開處理        if (0 === $tabBlocks.size() || 0 === $tabLists.size()) {            return false;        }        // 取得內容物件的 id 列表        $tabLinks.each(function () {            var id = _getContentId($(this));            if (null !== id) {                tabIdList.push(id);            }        });        // 預設顯示首項內容物件        $tabLinks.eq(0).parents(_settings.activeElement).addClass(_settings.activeClass);        $tabBlocks.hide().eq(0).show();        // 觸發事件時，變換內容物件        $tabLinks.bind(_settings.eventType, function () {            _slide($tabLinks.index($(this)));            return false;        });        // 強制點擊事件無效        $tabLinks.click(function () { return false; });        // 判斷滑鼠是否在暫停區塊        container.hover(_setPause, _setPause);        // 設定秒數時，依序變換內容        if (0 < parseInt(_settings.slideTime)* 1000 && 0 < parseInt(_settings.slideNumber)) {            setInterval(_slideShow, parseInt(_settings.slideTime)* 1000);        }    };    return this.each(_handler);};})(jQuery);
