<!DOCTYPE html><html> <head> <title>浏览器对象</title> <meta http-equiv="Content-Type" content="text/html; charset=gkb"/> </head> <body> <!--先编写好网页布局--> <h2>操作成功</h2> <span id="toy"></span>秒后返回主页<a href="#">返回</a> <script type="text/javascript"> var time=5; function box() { document.getElementById("toy").innerHTML=time; time=time-1; if(time==0){ alert("该跳转了") break; } } //获取显示秒数的元素,通过定时器来更改秒数。 //通过window的location和history对象来控制网页的跳转。 setTimeout("box()",1000) </script> </body></html>请问这段代码问题出现在哪里?检查了几次都发现不了为何不能正常获取
2 回答
已采纳
stone310
TA贡献361条经验 获得超191个赞
主要就是2个问题,计时器问题还有break,改了的地方都注释了
<script type="text/javascript"> var time=5; var clock; function box() { document.getElementById("toy").innerHTML=time; if(time==0){ alert("该跳转了"); // break; //if判断不能直接用break,可以在外面镶套while,switch,for或直接用while,switch,for,而且这里用break的意思也不对,不需要跳出判断,而是要停止计时 clearInterval(clock); //停止计时器,数字不再跳动 }; time=time-1; //放到判断后面,数字显示到0;放到前面就先为0,然后再判断,就始终显示1 }; clock=setInterval("box()",1000); //setTimeout是延时执行,只执行一次,setInterval是循环 </script>
添加回答
举报
0/150
提交
取消