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

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

使用setTimeout模擬setInterval時,用clearTimeout清除多余的調用

使用setTimeout模擬setInterval時,用clearTimeout清除多余的調用

素胚勾勒不出你 2018-12-14 16:14:22
使用setTimeout模擬setInterval時,使用clearTimeout清除多余的調用,為什么運動直接停止了?html:`css:js:如果我把setTimeout(startMove,200);放在位置1,那么運動很正常,我不停的點擊button,運動也不會變快或者停止。但是如果我把setTimeout(startMove,200);放在位置2,那在我點擊第二次button的時候,運動會直接停止,而且不會再繼續運動了。想請問一下,為什么會發生這種情況?就算我點擊了button,前一個setTimeout被清除了,不應該在20毫秒后,又會出現一個新的setTimeout嗎?希望有高手可以解答,非常感謝!
查看完整描述

1 回答

?
千萬里不及你

TA貢獻1784條經驗 獲得超9個贊

位置2出問題是因為多次點擊會導致多次觸發setTimeout(startMove,200),然后會在200ms內不斷clearTimeout(timer)和給timer賦值setTimeout,導致動畫失效。


查看完整回答
反對 回復 2019-01-16
  • 1 回答
  • 0 關注
  • 1963 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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