﻿// 滚动广告功能控制
var ScrollImage = function() {
    var Obj = $("BigScroll");
    var Big = $T("BigScroll", "img");
    var Small = $T("SmallScroll", "img");
    var Index = 0, TimeOut = 3000, Delay = 10, MaxMove = 100;
    var Timer = null, ScrollTime = null;
    var Offset = Obj.offsetTop;
    var _H = 192;

    var WaitNext = function() {
        clearInterval(ScrollTime);
        for (var i = 0; i < Small.length; i++)
            Small[i].className = (i == Index) ? "Hot" : "";
        Timer = setTimeout(Scroll, TimeOut);
    };

    var Scroll = function() {
        if (Timer != null) clearTimeout(Timer);
        Index++;
        Index = Index == 6 ? 0 : Index;

        ScrollTime = setInterval(Image, Delay);
    }

    var Image = function() {
        var _Top = Obj.offsetTop - Offset;
        var _Div = -Index * _H - _Top;
        var _To = Math.abs(_Div / 2);
        _To = Math.abs(_Div) <= 6 ? Math.abs(_Div) : _To;
        _To = _To > MaxMove ? MaxMove : _To;
        _To = _Div < 0 ? -_To : _To;

        if (_To > 0)
            _To = Math.floor(_To);
        else
            _To = Math.ceil(_To);

        if (_To == 0)
            WaitNext();
        else
            $S(Obj).Top(_Top + _To);
    };

    var MoveTo = function(n) {
        if (Timer != null) clearTimeout(Timer);
        if (ScrollTime != null) clearInterval(ScrollTime);

        Index = n;
        ScrollTime = setInterval(Image, Delay);
    };

    for (var i = 0; i < Small.length; i++) {
        Small[i].Index = i;
        Small[i].onclick = function() {
            MoveTo(this.Index);
        };
    }

    Small[0].className = "Hot";
    Timer = setTimeout(Scroll, TimeOut);
};

var FadeImage = function() {
    var Obj = $("BigScroll");
    var Big = $T("BigScroll", "img");
    var Small = $T("SmallScroll", "img");
    var Index = 0, FadeIndex = 0;
    var TimeOut = 3000, Delay = 50, FadeStep = 20;
    var Timer = null, FadeTime = null;
    var Offset = Obj.offsetTop;
    var _H = 192;

    var WaitNext = function() {
        clearInterval(FadeTime);
        Big[Index].style.filter = "";
        Index = FadeIndex;

        $S(Obj).Top(-FadeIndex * _H);

        for (var i = 0; i < Small.length; i++)
            Small[i].className = (i == Index) ? "Hot" : "";
        Timer = setTimeout(Fade, TimeOut);
    };

    var Fade = function() {
        if (Timer != null) clearTimeout(Timer);
        FadeIndex++;
        FadeIndex = FadeIndex == 6 ? 0 : FadeIndex;
        Big[Index].style.filter = "alpha(opacity=100)";
        FadeTime = setInterval(Image, Delay);
    }

    var Image = function() {
        var f = Big[Index].filters[0];
        if (f.Opacity > FadeStep)
            f.Opacity -= FadeStep;
        else if (f.Opacity > 0)
            f.Opacity = 0;
        else
            WaitNext();
    };

    var MoveTo = function(n) {
        if (Timer != null) clearTimeout(Timer);
        if (FadeTime != null) clearInterval(FadeTime);

        FadeIndex = n;
        Big[Index].style.filter = "alpha(opacity=100)";
        FadeTime = setInterval(Image, Delay);
    };

    for (var i = 0; i < Small.length; i++) {
        Small[i].Index = i;
        Small[i].onclick = function() {
            MoveTo(this.Index);
        };
    }

    Small[0].className = "Hot";
    Timer = setTimeout(Fade, TimeOut);
};

AddEvent(window, "load", ScrollImage);

