為什么數(shù)字從5跳到0后一直減到負數(shù),不跳轉網頁
? ?<!--先編寫好網頁布局-->
? ?<h1> 操作成功</h1>
? ?<b id="seconds">5</b>
? ?<span>秒后返回主頁</span>
? ?<a href="javascript:goback();">返回</a>
?
? <script type="text/javascript">?
? var num=document.getElementById("seconds").innerHTML
? //獲取顯示秒數(shù)的元素,通過定時器來更改秒數(shù)。
? function count(){
? ? ? num--;
? ? ? document.getElementById("seconds").innerHTML=num;
? ? ? if(num==0) { location.assign="idcbgp.cn";}
? }?
? ?setInterval(count(),100);
? ? //通過window的location和history對象來控制網頁的跳轉。
? function goback()
? {
? ? ? history.back();
? }
? ?
2016-04-21
哥們你這代碼有幾個問題:
1、你的源碼中<script>標簽沒有閉合;
2、你的代碼邏輯有問題,頁面加載后會執(zhí)行計時器,計時器會調用count函數(shù),每過一秒頁面調用一次,執(zhí)行一次,而每次執(zhí)行時num都會減1,所以會導致count一直減下去,然后再去判斷num的值,你應該在調用count函數(shù)開始的時候就判斷num是否為0,否則進行后面的操作,頁面加載流程要搞清楚。附上改過的代碼,可以運行。
3、你沒有認真看答案啊,都說了location.assign="http://idcbgp.cn"這種寫法是錯誤的,要寫成location.assign(http://idcbgp.cn)才對?。?!
2016-04-17
? ? ? 1、 ?setInterval("fun()",1000);//全局作用域下正常執(zhí)行
? ? ? ? setInterval(fun(),1000); //調用函數(shù)正常,setInterval調用出錯
? ? ? ? setInterval(fun,1000); ?//正確
2、打開新界面同2L,就像你用一個函數(shù),xxx.(),是在()里面?zhèn)鲄?shù),而不是寫成xxx = ();
2016-04-16
setInterval("count()",1000) 或者?setInterval(count,1000)
location.assign是函數(shù),不能直接賦值 而應該代入實參
location.assign("http://idcbgp.cn")?
2016-04-16
把這句setInterval(count(),100);
改成:setInterval(count,1000);或setInterval("count()",1000);試試
原因:之前介紹setInterval那一節(jié)提到:
“交互時間:以毫秒計(1s=1000ms)。
調用函數(shù)格式(假設有一個clock()函數(shù)):
setInterval("clock()",1000)
或setInterval(clock,1000) ”