日期:2014-05-16  浏览次数:20284 次

关于自动滚屏,不知道问题出哪里了,请各位看看
我想让它滚东的时候自动变化速度。。。代码如下
JScript code

        var currentpos=0;
        var n=1;
        var timer;
        function initialize() 
        {
       if(n>0 && n<=5){
             timer=setInterval("scrollPage()",10);//使用定时器不断执行滚动操作
           }else{
             timer=setInterval("scrollPage()",100);//使用定时器不断执行滚动操作

           }
    } 
        function stopScroll() 
        { 
          clearInterval(timer);              //清空页面中的定时器
        } 
        function scrollPage() 
        { 
           currentpos++;
           window.scroll(0,currentpos);      //滚屏操作
           if(n>0 && n<10){
             n++;
           }else{
              n=1;
           }
        } 



------解决方案--------------------
修正:
JScript code
var currentpos=0;
        var n=1;
        var timer=null;
        var clear=false;
        function initialize() 
        {
            timer=n<=5?setInterval("scrollPage()",1000):setInterval("scrollPage()",3000);
        } 
        function stopScroll() 
        { 
          clearInterval(timer); //清空页面中的定时器
        } 
        
        function scrollPage() 
        { 
           currentpos+=n<=5?10:50;
           window.scroll(0,currentpos);      //滚屏操作
           if(n<10){
               if(n>5){
                    if(!clear){
                       clear=true;
                       stopScroll();//如果n>5则清除当前计时器
                       initialize();//再次初始化
                   }
                   n++;//继续计次
               }
               else{
                    n++;//继续计次
               }
           }
           else{
               clear=false;
               stopScroll();//n>=10,清除当前计时器
               n=1;//计次初始化
               initialize();//再次初始化
           }
        }
        initialize();