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

求解代码错误,数字不会发生变化

<!DOCTYPE html>

<html>

 <head>

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

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

 </head>

 <body>

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

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

  <p><b id="time">5</b>秒后回到主页 <a href="window.history.back()">返回</a></p> 

  <script type="text/javascript">  

function arr()

 {

  num--

     document.getElementById("time").innerHTML=num;

     if(num==1)

     {

         window.location.htef="http://www.hao123.com";

     }

};

setInterval("arr()",1000);

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


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

   

 </script> 

</body>

</html>


提问者:Montgomery0 2016-11-01 23:28

个回答

  • ZAnsder
    2016-11-02 00:59:54
    已采纳

    <script type="text/javascript">
       var time_ele = document.getElementById("time"),
             num       = time_ele.innerHTML;
       setInterval("arr()", 1000);
       
       function arr() {
           num--;
           time_ele.innerHTML = num;
           if (num == 1) {
               window.location.href = "http://www.hao123.com";
           }
       }
    </script>

  • ZAnsder
    2016-11-02 00:57:11

    有几个小问题:1、num未申明,num--就是NaN非数值。 2、www.location.href你写成htef。最后说个思路,如果你默认在html结构里写上5的话,可以把这个值取出来作为num的初始值。

  • 逸风_
    2016-11-01 23:39:41

    我写的时候也在html里直接写了个5,然后运行的时候是 5 4    5 3    5 2   5 1  像这样跳的

  • 逸风_
    2016-11-01 23:36:06

    你没有定义num的值就在num--了