亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

關于clearTimeout()的疑問

關于clearTimeout()的疑問

陽光雨下 2016-01-27 11:33:55
js進階篇中8-6取消計時器clearTimeout()代碼如下<html> <head> <meta?http-equiv="Content-Type"?content="text/html;?charset=utf-8"> <title>計時器</title> </head> <script?type="text/javascript"> ??var?num=0; ??var?i; ??function?startCount(){ ????document.getElementById('count').value=num; ????num=num+1; ????i=setTimeout("startCount()",1000); ??} ??function?stopCount(){ ????clearTimeout(i); ??} </script> </head> <body> ??<form> ????<input?type="text"?id="count"?/> ????<input?type="button"?value="Start"?onclick="startCount()"?/> ????<input?type="button"?value="Stop"?onclick="stopCount()"??/> ??</form> </body> </html>點擊多少次Start按鈕,就要點擊多少次Stop按鈕才能停在計時器。我想問此時i值是怎么保存setTimeout()的id值,通過數組嗎?假設是數組的話,clearTimeout(i)方法是用shift()刪除數組i里的元素和splice()添加元素的?
查看完整描述

1 回答

?
pardon110

TA貢獻1038條經驗 獲得超227個贊

注意setTimeout()產生的id值,全部保存到單一全局變量i中。所以在你寫的這段代碼中,點擊多少次Start按鈕,就要點擊多少次Stop按鈕才能停在計時器 的想法是錯的。因為每次產生的settimeout()id值,都被覆蓋了。所以無論按多少次start,一次stop就可以了

查看完整回答
反對 回復 2016-01-28
  • 陽光雨下
    陽光雨下
    不是我一個人這樣啊,你可以去看下這個課程。。所有的同學評論都是這樣的。我開始也是像你這樣想得,試了代碼,我整個人都不好了,所以才提問的。
  • 1 回答
  • 0 關注
  • 2292 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號