/**
 * JS 自动、连续、向左滑动
 */
(function($){
    $.fn.slider = function(options) {
        var defaults = {
            speed: 800,
            pause: 10000
        };
        var options = $.extend(defaults, options);
        var obj = $(this);
        var s = $("li", obj).length;
        var w = $("li", obj).width();
        var h = $("li", obj).height();
        var clickable = true;
        obj.width(w);
        obj.height(h);
        obj.css("overflow","hidden");
        var ts = s-1;
        var t = 0;
        $("ul", obj).css('width',s*w);
        $("ul", obj).prepend($("ul li:last-child", obj).clone().css("margin-left","-"+ w +"px"));
        $("ul", obj).append($("ul li:nth-child(2)", obj).clone());
        $("ul", obj).css('width',(s+1)*w);

        function adjust(){
            if(t>ts) t=0;
            if(t<0) t=ts;
            $("ul",obj).css("margin-left",(t*w*-1));
            clickable = true;
        };
        function animate(){
            if (clickable) {
                clickable = false;
                var ot = t;
                t = (ot>=ts) ? (t+1) : t+1;
                var diff = Math.abs(ot-t);
                var speed = diff*options.speed;
                p = (t*w*-1);
                $("ul",obj).animate({ marginLeft: p },{ queue:false, duration:speed, complete:adjust });
                timeout = setTimeout(function(){animate();},diff*options.speed+options.pause);
            };
        };
        var timeout = setTimeout(function(){ animate(); }, options.pause);
		$("ul", obj).mouseover(function() {clearTimeout(timeout);});
		$("ul", obj).mouseout(function() {timeout = setTimeout(function(){ animate(); }, options.pause);});	

		$(".slider-steptop").mouseover(function() {clearTimeout(timeout);});
		$(".slider-steptop").mouseout(function() {timeout = setTimeout(function(){ animate(); }, options.pause);});	
    }
})(jQuery);
