请问我的代码哪里不对?
为什么5秒没有变成4,3,2,1……?
2016-07-14
你的错误在于你的js位置写错了,你在js里获取id为timer这个元素的时候,浏览器并没有解析到html的位置,所以它没获取到timer,你把js放在html后面就可以了,如下:
<!DOCTYPE html>
<html>
<head>
<title>浏览器对象</title>
<meta charset="utf-8"/>
<meta http-equiv="Content-Type" content="text/html; charset=gkb"/>
</head>
<body>
<!--先编写好网页布局-->
<h1>操作成功</h1>
<span id="timer">5</span>
<span>秒后回到主页</span>
<a href="javascript:back();">返回</a>
</body>
<script type="text/javascript">
//获取显示秒数的元素,通过定时器来更改秒数。
var num=document.getElementById("timer").innerHTML;
function count(){
num--;
document.getElementById("timer").innerHTML=num;
if(num==0){
window.location.assign("http://www.imooc.com");
}
}
setInterval("count()",1000);
//通过window的location和history对象来控制网页的跳转。
function back(){
window.history.go(-1);
}
</script>
</html>
举报