<!DOCTYPE html><html> <head> <title>浏览器对象</title> <meta http-equiv="Content-Type" content="text/html; charset=gkb"/> </head> <body> <!--先编写好网页布局--> <H4>操作成功</H4> <p><span id="id">5</span>秒后回到主页<a href="#" onclick="set()">返回</a><p> <script type="text/javascript"> //获取显示秒数的元素,通过定时器来更改秒数。var da=document.getElementById("id").innerHTML;function set(){ if(da>0){ document.getElementById("id").innerHTML=--da; setInterval(set,1000); }else{ window.location.assign("http://www.baidu.com"); } }setInterval(set,1000); //通过window的location和history对象来控制网页的跳转。 </script> </body></html>
2 回答
摩诃迦叶
TA贡献146条经验 获得超54个赞
if(da>0){
document.getElementById("id").innerHTML=--da;
setInterval(set,1000);
}
因为你在这里面又调用了setInterval(set,1000);方法。 每次执行到这时都会又开一个计时器,就变成每秒多个计时器多同一个da进行--,数值肯定错了。 把这句话删掉就行了
添加回答
举报
0/150
提交
取消