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

不知道错在哪儿了 求大神解答TAT

<!DOCTYPE html>

<html>


<head>

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

    <meta http-equiv="Content-Type" content="text/html; charset=gkb" />

</head>


<body>

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

    <h3><b>操作成功</b></h3>

    <span id="ms">5</sapn>秒后回到主页&nbsp;<a href="#" onclick="goBack()">返回</a>

 

  <script type="text/javascript">  

 

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

   var num=6;

    function clock()

    {

        document.getElementById("ms").innerHTML=num-1;

    }

    num--;

    setInterval("clock()",1000);

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

   function goBack()

   {

       window.history.back;

   }

 </script> 

</body>

</html>


提问者:July404 2019-10-10 12:20

个回答

  • qq_慕慕947699
    2019-10-10 16:39:19
    已采纳

    <body onload="clock()">  
    <!--先编写好网页布局-->  
    <h3><b>操作成功</b></h3>  
    <!-- <span id="ms">5</sapn> 标签写错了 -->  
    <span id="ms">5</span>秒后回到主页&nbsp;<a href="#" onclick="goBack()">返回</a>    
    <script type="text/javascript">      
    //获取显示秒数的元素,通过定时器来更改秒数。      
    var num = 6;      
    function clock() {        
    // document.getElementById("ms").innerHTML=num-1;--> 写了num-- 以后不需要写这个        
    num--;        
    document.getElementById("ms").innerHTML = num;                
    if (num == 0) {          
    window.location.replace('http://www.baidu.com')          
    return;        
    }        
    // num--;挪进方法里边        
    setTimeout("clock()", 1000);               
    }      
    //通过window的location和history对象来控制网页的跳转。      
    function goBack() {        
    // window.history.back===>要加括号调用;        
    window.history.back();      
    }    
    </script>
    </body>

    然后如果你要看setIterval的写法可以参考我上一个回答,

    setTimeout:是从现在算起多少ms后运行该代码(只运行一次),执行完销毁重新创建,至始至终只有一个存在
    setInterval:是每隔多少ms运行一次代码,这个代码会不断的执行的,不清楚继续使用会出现出现多个定时器一起计时

  • qq_慕慕947699
    2019-10-10 16:22:58

    <!DOCTYPE html>
    <html> 
    <head>  
    <title>浏览器对象</title>    
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>    
    </head> 
    <body onload="timerb()">  
    <!--先编写好网页布局-->  
    <h3>操作成功</h3>  
    <p id="p1"></p>  
    <button onclick="goBack()">返回</button>     
    <script type="text/javascript">      
        //获取显示秒数的元素,通过定时器来更改秒数。   
        var num = 10;    
        var timer = null;    
        function timerb() {      
            document.getElementById('p1').innerHTML = num + '秒后跳到首页'      
            num--;      
            if (!timer) {        
                timer = setInterval("timerb()", 1000)     
             }      
             if (num === 0) {        
                 timer = null;        
                 location.replace('http://www.baidu.com')      
             }    
         }    
         //通过window的location和history对象来控制网页的跳转。   
         function goBack(){       
             window.history.back()   
         } 
     </script> 
     </body>
     </html>