问答详情
源自:8-17 编程练习

为什么秒数不会变动,直接从5就蹦到0了?不显示4、3、2、1?

大神帮帮忙~谢谢~

提问者:想去非洲耍___ 2016-02-23 21:17

个回答

  • 湖工咖啡
    2016-02-23 22:52:37
    已采纳

    问题1:

    for(var i=5;i>=0;i--){

        document.getElementById("sec").innerHTML=i;

            if(i==0){window.location.assign("http://www.imooc.com/");}

            }

    这个循环体并不是每个1s执行一次的,而是不受时间控制的连续执行

    问题2:

    var int=setInterval(clock,5000);

    5000是不是应该改成1000呢?

  • ConradW
    2016-02-23 23:24:12

    <script type="text/javascript">
        var int=setInterval("clock()",1000);
        var i=5;
        function clock(){
            i--;
            document.getElementById("sec").innerHTML=i;
            if(i==0){window.location.assign("http://www.imooc.com/");}
        }
    
        function backweb(){window.history.back();}
        
    </script>


  • lanhao
    2016-02-23 22:56:51

    <!DOCTYPE html>
    <html>
     <head>
      <title>浏览器对象</title>  
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>   
     </head>
     <body>
      <!--先编写好网页布局可以用span-->
       <h2>操作成功</h2>
       <p><span id="sec">5</span>秒后返回主页<a href=""  target="_blank" onclick="backweb()">返回</a></p>
      
     
      <script type="text/javascript">  
         var int=setInterval(clock,1000);
    	 var i=5;
         function clock(){
    		document.getElementById("sec").innerHTML=i;
    		i--;
            if(i==0){window.location.assign("http://www.imooc.com/");}
        }
         
         
         function backweb(){window.history.back();}
     
     
     
       //获取显示秒数的元素,通过定时器来更改秒数。写在js
    
       //通过window的location和history对象来控制网页的跳转。
       
     </script> 
    </body>
    </html>
    </html>


  • 湖工咖啡
    2016-02-23 22:53:57

    <!--这是我的代码仅供参考-->

    <!DOCTYPE html>

    <html>

    <head>

        <meta charset="UTF-8">

        <title>浏览器对象</title>

    </head>

     <body>

      <!--先编写好网页布局-->

      <h4>

          操作成功

      </h4>

      <span id = "newtime">5</span>

      秒后回到主页

      <a href="javascript:banklast()">返回</a>

      <script type="text/javascript">   

       //获取显示秒数的元素,通过定时器来更改秒数。

         var mytime = 5;

    var i ,j;

        function changetime()

        {

    document.getElementById("newtime").innerHTML = mytime;

            mytime --;

    if(mytime == 0)

    {

    clearInterval(i);

    location.href="http://www.imooc.com/";

    }

        }

        i = setInterval("changetime()",1000);

       //通过window的location和history对象来控制网页的跳转。

       function banklast()

       {

    history.back();

    alert("1123");

       }

     </script> 

    </body>

    </html>