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

js 8-17练习(网页跳转和返回)

<!DOCTYPE html>

<html>

 <head>

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

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

 </head>

 <body>

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

  <h3>操作成功</h3>


  <p><span id="wholeTime">5</span>秒后回到主页  <a href="javascript:void(0)" onclick="back()">返回</a></p>

  

  

 

  <script type="text/javascript">  

 

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

   var time =new Date();

   var t=document.getElementById("wholeTime").innerHTML;

   function daojishi()

   {

       if(t>0)

       {

           t--;

           document.getElementById("wholeTime").innerHTML=t;

       }

       else 

       window.open("http://www.imooc.com/");

   }

   var a=window.setInterval(daojishi,1000);


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

   function back()

   {

       window.history.back();

   }

   

 </script> 

</body>

</html>


这样写为什么会不停的打开网页啊?求大神指导

提问者:慕粉0927481609 2017-09-12 09:29

个回答

  • ThomasKwok
    2017-09-27 16:20:01

    你没有clearInterval啊 所以他每秒都会执行一次

  • Gigure
    2017-09-12 16:44:29

    与同问

  • 二柱子丶
    2017-09-12 15:49:09

    function daojishi()

       {

           if(t>0)

           {

               t--;

               document.getElementById("wholeTime").innerHTML=t;

           }

       }

       var a=window.setInterval(daojishi,1000);

       window.open("http://www.imooc.com/");

    else转到页面这句会在i小于0后一直执行,然后就会不停地打开页面.这样改一下就可以了

  • 宝慕林9550988
    2017-09-12 15:36:33

    t是HTML格式 t>0 为false,需先使用parseInt()函数将字符串转为整数