課程
/前端開(kāi)發(fā)
/JavaScript
/JavaScript進(jìn)階篇
在setTimeout中,不斷點(diǎn)擊start會(huì)出現(xiàn)計(jì)數(shù)加速的情況,請(qǐng)問(wèn),如何避免這種情況,以及原理是什么?
2016-08-28
源自:JavaScript進(jìn)階篇 8-6
正在回答
function startCount(){
? ? ? ? ? clearTimeout(i);
? ? num=num+1;
? ? document.getElementById('count').value=num;
? ? i=setTimeout("startCount()",1000)}
? ? setTimeout("startCount()",1000);
只要在函數(shù)中加入清理定時(shí)器就可以,
慕用5675268 提問(wèn)者
慕粉3597558 回復(fù) 慕用5675268 提問(wèn)者
這是我的代碼,思路就是讓點(diǎn)擊start后不運(yùn)行計(jì)時(shí)器,所以通過(guò)設(shè)一個(gè)方法去判斷有沒(méi)有點(diǎn)擊過(guò)。
AcerYyzy
Geeker哞哞
點(diǎn)對(duì)應(yīng)個(gè)stop
你每次點(diǎn)擊start就執(zhí)行startCount()函數(shù),里面的setTimeout("startCount()",1000);是每一秒就執(zhí)行一次,你不斷點(diǎn)擊,計(jì)數(shù)是在1000ms結(jié)束后才計(jì)數(shù)?setTimeout就不斷累積,看上起就像加速了停不下來(lái)一樣。
舉報(bào)
本課程從如何插入JS代碼開(kāi)始,帶您進(jìn)入網(wǎng)頁(yè)動(dòng)態(tài)交互世界
1 回答點(diǎn)擊多次之后累加的速度回加快
2 回答關(guān)于setTimeout()多次點(diǎn)擊速度飆升問(wèn)題!
4 回答多次點(diǎn)擊start問(wèn)題
1 回答多次點(diǎn)擊按鈕問(wèn)題
3 回答如何解決計(jì)時(shí)器中點(diǎn)擊一次增加1s問(wèn)題
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號(hào)-11 京公網(wǎng)安備11010802030151號(hào)
購(gòu)課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動(dòng)學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號(hào)
2016-09-13
function startCount(){
? ? ? ? ? clearTimeout(i);
? ? num=num+1;
? ? document.getElementById('count').value=num;
? ? i=setTimeout("startCount()",1000)}
? ? setTimeout("startCount()",1000);
只要在函數(shù)中加入清理定時(shí)器就可以,
2016-08-31
這是我的代碼,思路就是讓點(diǎn)擊start后不運(yùn)行計(jì)時(shí)器,所以通過(guò)設(shè)一個(gè)方法去判斷有沒(méi)有點(diǎn)擊過(guò)。
2016-08-29
點(diǎn)對(duì)應(yīng)個(gè)stop
2016-08-28
你每次點(diǎn)擊start就執(zhí)行startCount()函數(shù),里面的setTimeout("startCount()",1000);是每一秒就執(zhí)行一次,你不斷點(diǎn)擊,計(jì)數(shù)是在1000ms結(jié)束后才計(jì)數(shù)?setTimeout就不斷累積,看上起就像加速了停不下來(lái)一樣。