解决方案 »

  1.   


        var flag=true;
    //闪电timer
        function startLightning(){
            timer1 = setInterval(function(){
                 if(flag)
                 {
                    lightToGray();
                 }else{
                    lightToChange()
                 }
                 flag=!flag;
             }, 800);
        }
      

  2.   

    80ms   800->80 xie cuo le
      

  3.   

    这样是可以,但是我想在每一次循环后,要等5秒再进行下一次循环。比如,lightToGray();后执行lightToChange();,这算一个循环。之后再过5秒再进行第二次。
    您的方法每次lightToGray和lightToChange之间的间隔都为80毫秒。
    请问大神知道怎么做吗?
      

  4.   

    这样是可以,但是我想在每一次循环后,要等5秒再进行下一次循环。比如,lightToGray();后执行lightToChange();,这算一个循环。之后再过5秒再进行第二次。
    您的方法每次lightToGray和lightToChange之间的间隔都为80毫秒。
    请问大神知道怎么做吗? 
      

  5.   

    function startLightning(){
        timer1 = setTimeout('lightToGray()', 4920);
        timer2 = setTimeout('lightToChange()', 5000);
        //clearTimeout(timer1);
        //clearInterval(timer2);
    }//闪电变灰
    function lightToGray(){
        //随机获取div的行列数,以随机选择div进行变色
        randomR = Math.floor(Math.random()*maxR);
        randomC = Math.floor(Math.random()*maxC);
        beforeColor = document.getElementById("r"+randomR+"c"+randomC).style.backgroundColor;
        document.getElementById("r"+randomR+"c"+randomC).style.backgroundColor = "dimgray";
    }//闪电变色
    function lightToChange(){
        if(beforeColor == "blue"||beforeColor == "yellow"||beforeColor == "red"||beforeColor == "black"){
            document.getElementById("r"+randomR+"c"+randomC).style.backgroundColor = beforeColor;
        }
        else{
            document.getElementById("r"+randomR+"c"+randomC).style.backgroundColor = "yellow";
        }
        setTimeout('startLightning', 8000);
            
    }
      

  6.   


    //闪电timer
        function startLightning(t){
    if(t!=1)
            timer1 = setTimeout('lightToGray();startLightning(1)', 4920);
    else
        timer1 = setTimeout('lightToChange();startLightning()', 80);
        }