﻿function flashTabs(tabs, tabContents, speed, isMouseOver) {
    if (tabs.length==0) {return; }
    var selectedTab = null;
    var selectedContent = null;
    var preSelectedTab = null;
    var preSelectedContent = null;
    var MouseEvent = function(domTab,i) {
        if (domTab == selectedTab.get(0)) { return false; }
        preSelectedTab = selectedTab;
        preSelectedContent = selectedContent;
        selectedTab = $(domTab);
        selectedContent = $($(tabContents)[i]);
        preSelectedTab = preSelectedTab.get(0) == selectedTab.get(0) ? null : preSelectedTab;
        preSelectedContent = preSelectedContent.get(0) == selectedContent.get(0) ? null : preSelectedContent;
        preSelectedTab.removeClass("selected");
        selectedTab.addClass("selected");
        preSelectedContent.hide(speed, function() { selectedContent.show(); });
        return false;
    };
    $(tabs).each(function(i) {
        var tab = this;
        if ($(tab).hasClass("selected")) {
            selectedTab = $(tab);
            selectedContent = $($(tabContents)[i]);
            tabContents.not(selectedContent).hide();
        }
        if (isMouseOver) {
            $(tab).mouseover(function() {
                return MouseEvent(this,i);
            });
        } else {
            $(tab).click(function() {
                return MouseEvent(this,i);
            });
        }

    });
}

/**/
function gailly(gaillyDivSelector, itemsSelector, preBtnSelector, nextBtnSelector) {
    if ($(gaillyDivSelector).length==0) {return; }
    var _previousButton = $(preBtnSelector);
    var _nextButton = $(nextBtnSelector);
    var _showCount = 3;
    var _gaillyItemWidth = 300;
    var _gaillyItems = $(itemsSelector);
    var _gaillyDiv = $(gaillyDivSelector);
    var _buttonActiveClass = "active";
    var _leftItemIndex = 0;
    var _rightItemIndex = 2;
    var _left = 0;
    var _width = 0;
    var _step = 1;
    var _speed = 300;

    this.PreviousButton = function(selector) { _previousButton = $(selector); return this; };
    this.NextButton = function(selector) { _nextButton = $(selector); return this; };
    this.ShowCount = function(num) { _showCount = num; return this; };
    this.GaillyItemWidth = function(num) { _gaillyItemWidth = num; return this; };
    this.GaillyItems = function(selector) { _gaillyItems = $(selector); return this; };
    this.GaillyDiv = function(selector) { _gaillyDiv = $(selector); return this; };
    this.ButtonActiveClass = function(className) { _buttonActiveClass = className; return this; };
    this.Step = function(num) { _step = num; return this; };
    this.Speed = function(num) { _speed = num; return this; };

    var Init = function() {
        var tempLeft = _gaillyDiv.css("left").replace("px", "");
        _left = isNaN(tempLeft) ? 0 : parseInt(tempLeft);
        _leftItemIndex = Math.abs(_left / _gaillyItemWidth);
        _rightItemIndex = _leftItemIndex + _showCount - 1 > _gaillyItems.length - 1 ? _gaillyItems.length - 1 : _leftItemIndex + _showCount - 1;
        _width = _gaillyItemWidth * _gaillyItems.length;
    };
    var SetStyle = function() {
        switch (_leftItemIndex) {
            case 0:
                if (_gaillyItems.length <= _showCount) {
                    _nextButton.removeClass(_buttonActiveClass);
                }
                else {
                    _nextButton.addClass(_buttonActiveClass);
                }
                _previousButton.removeClass(_buttonActiveClass);
                break;
            case _gaillyItems.length - 1 - _showCount + 1:
                _previousButton.addClass(_buttonActiveClass);
                _nextButton.removeClass(_buttonActiveClass);
                break;
            default:
                _nextButton.addClass(_buttonActiveClass);
                _previousButton.addClass(_buttonActiveClass);
                break;
        }
    }
    this.Bind = function() {
        Init();
        _previousButton.click(function() {
            if (_leftItemIndex == 0) {
                return;
            }
            var tempStep = _leftItemIndex < _step ? _leftItemIndex : _step;
            _left += _gaillyItemWidth * tempStep;
            _gaillyDiv.animate({ "left": _left }, 300);
            _leftItemIndex -= tempStep;
            _rightItemIndex -= tempStep;
            SetStyle();
        });
        _nextButton.click(function() {
            if (_rightItemIndex == _gaillyItems.length - 1) {
                return;
            }
            var tempStep = _gaillyItems.length - _rightItemIndex - 1 < _step ? _gaillyItems.length - _rightItemIndex - 1 : _step;
            _left -= _gaillyItemWidth * tempStep;
            _gaillyDiv.animate({ "left": _left }, 300);
            _leftItemIndex += tempStep;
            _rightItemIndex += tempStep;
            SetStyle();
        });
    }
}

/*favorate*/
function addbookmark() {
    var nome_sito = window.document.title;
    var url_sito = window.document.location;
    if ((navigator.appName == "Microsoft Internet Explorer") && (parseInt(navigator.appVersion) >= 4)) {
        try{
            window.external.AddFavorite(url_sito, nome_sito); 
        }catch(ex){alert("加入收藏失败，请使用Ctrl+D进行添加!");}
    }
    else if (navigator.appName == "Netscape")
    { 
        try{
                window.sidebar.addPanel(nome_sito, url_sito, ""); 
            }catch(ex){alert("加入收藏失败，请使用Ctrl+D进行添加!");}
    }
    else {
        alert("加入收藏失败，请使用Ctrl+D进行添加!");
    }
}
