<!DOCTYPE?html>
<html>
?<head>
??<title>瀏覽器對象</title>??
??<meta?http-equiv="Content-Type"?content="text/html;?charset=gkb"/>???
?</head>
?<body>
??<!--先編寫好網(wǎng)頁布局-->
?<h3>操作成功</h3>
<b?id="s">5</b>秒后回到主頁<a?href=""?onclick="goback()">返回</a>
<script?type="text/javascript">
var?sec=5;
setTimeout(clock,1000);
function?clock()
{
????document.getElementById("s").innerHTML=sec;
????if?(sec==1)
????window.location.href?=??"http://idcbgp.cn/";
????sec=sec-1;
????setInterval(clock,1000);
}
function?goback()
{
????window.history.back();
}
???
?</script>?
</body>
</html>
2019-07-24
先不要哭,代碼看完,你寫的里邊if(sec == 1){}后邊加上{}這個(gè)。其次你每次回調(diào)clock的時(shí)候就會(huì)生成一次定時(shí)器。當(dāng)前5-4-3 調(diào)用2次的時(shí)候,你代碼其實(shí)有兩個(gè)定時(shí)器,每個(gè)定時(shí)器都會(huì)把sec-1,這樣的話你sec每一秒會(huì)被減兩次 所以你的sec會(huì)跳著走,5-4-3-1-負(fù)2,以下是正確代碼,望采納。
2019-07-24
在這個(gè)例子你可以觀察下瀏覽器,根本看不到節(jié)點(diǎn)變成了 你好前端 。他是直接變成了? 你好后端
2019-07-24
兩個(gè)定時(shí)器 減的sec的值,document.getElementById("s").innerHTML=sec這句話執(zhí)行二次,瀏覽器肯定會(huì)存在一個(gè)先后調(diào)用的過程,但是如果先后兩個(gè)操作值做一件事(類似操作節(jié)點(diǎn)。),且時(shí)間間隔非常小,瀏覽器就只執(zhí)行最后那一個(gè)要做的那個(gè)事