第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

setTimeout忽略超時(shí)?(立即觸發(fā))

setTimeout忽略超時(shí)?(立即觸發(fā))

梵蒂岡之花 2019-10-21 15:36:48
這是我第一次真正接觸JavaScript。當(dāng)然,我曾經(jīng)使用過它,但是我從未真正寫過任何東西。無論如何,我遇到了一個(gè)非常奇怪的問題,希望有人可以幫我解決。我正在嘗試使div的文本從黑變白。很簡單,是嗎?以下代碼有效。它將顏色更改為白色,但是,忽略了500ms的setTimeout時(shí)間。如果您使用Chrome瀏覽器并查看JS控制臺(tái),您將很容易看到doFade()方法幾乎是即時(shí)調(diào)用的,而不是每500毫秒調(diào)用一次。誰能解釋一下?var started = false;var newColor;var div;var hex = 0;function fadestart(){    if (typeof fadestart.storedColor == 'undefined') {        div = document.getElementById('test');        fadestart.storedColor = div.style.color;    }    if(!started){        console.log('fadestart');        newColor = fadestart.storedColor;        started = true;        setTimeout(doFade(), 500);    }}function fadestop(){    console.log('fadestop');    div.style.color = fadestart.storedColor;    started = false;    hex = 0;}function doFade(){    if(hex<=238){        console.log(hex);        hex+=17;        div.style.color="rgb("+hex+","+hex+","+hex+")";        setTimeout(doFade(), 500);    }}
查看完整描述

3 回答

?
瀟瀟雨雨

TA貢獻(xiàn)1833條經(jīng)驗(yàn) 獲得超4個(gè)贊

您需要?jiǎng)h除上的括號(hào)doFade()。


括號(hào)會(huì)立即調(diào)用該函數(shù)。


只需使用它:  doFade


查看完整回答
反對(duì) 回復(fù) 2019-10-21
?
鳳凰求蠱

TA貢獻(xiàn)1825條經(jīng)驗(yàn) 獲得超4個(gè)贊

setTimeout(doFade(), 500);

這一行說“ execute doFade(),然后將返回的值傳遞給setTimeout,它將在500毫秒后執(zhí)行此返回值”。即,您是doFade()在現(xiàn)場(chǎng)打電話。


跳過括號(hào)將函數(shù)傳遞給setTimeout:


setTimeout(doFade, 500);


查看完整回答
反對(duì) 回復(fù) 2019-10-21
?
波斯汪

TA貢獻(xiàn)1811條經(jīng)驗(yàn) 獲得超4個(gè)贊

我認(rèn)為您應(yīng)該使用setTimeout(doFade, 500);setTimeout("doFade()", 500);


查看完整回答
反對(duì) 回復(fù) 2019-10-21
  • 3 回答
  • 0 關(guān)注
  • 562 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)