为了账号安全,请及时绑定邮箱和手机立即绑定

为什么到了0之后还是会自减

<!DOCTYPE html>

<html>

 <head>

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

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

 </head>

 <body>

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

  <p>操作成功</p>

  <p><span id="back">5秒回到页面&nbsp;</span>

    <a style="text-decoration:underline ">返回</a></p>


 

  <script type="text/javascript">  

 


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

    var aaa=document.getElementById("back");

    var bbb=5;

    function con()

    {

         bbb--;

         aaa.innerHTML=bbb+"秒后回到页面";  


    }

    var i=setInterval("con()",1000);


    if(bbb==0)

    {

      clearInterval(i);

      

    }


 

 

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

   

 </script> 

</body>

</html>


正在回答

5 回答

回复 李逍遥lh:        <script type="text/javascript">
            //获取显示秒数的元素,通过定时器来更改秒数。
            var aaa = document.getElementById("back");
            var bbb = 5;
                var i = setInterval("con()", 1000);
            function con() {
                aaa.innerHTML = bbb + "秒后回到页面";
                if(bbb == 0) {clearInterval(i);}bbb--;}
            //通过window的location和history对象来控制网页的跳转。
        </script>
失误了,要把判断函数放在循环里面,这样就可以了

0 回复 有任何疑惑可以回复我~
#1

李逍遥lh 提问者

非常感谢!
2016-08-15 回复 有任何疑惑可以回复我~
#2

qq_miaomiaodoub_0 回复 李逍遥lh 提问者

function con() { aaa.innerHTML = bbb + "秒后回到页面"; if(bbb == 0) {window.location.href="http://www.imooc.com/";} //通过window的location和history对象来控制网页的跳转。 </script>
2016-08-16 回复 有任何疑惑可以回复我~
#3

qq_miaomiaodoub_0 回复 李逍遥lh 提问者

这样就是实现location实现页面跳转
2016-08-16 回复 有任何疑惑可以回复我~

if(bbb==0)

    {

      clearInterval(i);

    }else{

      setInterval("con()",1000);

   }

就行了,你要把定时器放在判断语句里面,否则的话定时器无限循环,根本不会执行判断(bbb==0)


0 回复 有任何疑惑可以回复我~
#1

李逍遥lh 提问者

还是没用啊
2016-08-15 回复 有任何疑惑可以回复我~

bbb=0时,setTimeout()停止,接着function函数继续执行,bbb=-1,setTimeout()继续显示时间,接着……

0 回复 有任何疑惑可以回复我~
#1

李逍遥lh 提问者

clear不是取消吗,取消就是没了啊
2016-08-15 回复 有任何疑惑可以回复我~
#2

小狗会飞 回复 李逍遥lh 提问者

clear只是停止了计时器啊,function继续执行并没有一点影响
2016-08-15 回复 有任何疑惑可以回复我~

我觉得你只是停止计时器了,那个con方法还会执行,还会--

0 回复 有任何疑惑可以回复我~
#1

李逍遥lh 提问者

计时器取消了那怎么还会按照每秒递减而不是每3秒递减
2016-08-15 回复 有任何疑惑可以回复我~

 感觉没毛病啊


0 回复 有任何疑惑可以回复我~
#1

李逍遥lh 提问者

我现在明白了,因为判断只执行了一次
2016-08-16 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么到了0之后还是会自减

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信