1
如果單擊圖像,它會在3秒後更改圖像。但是如果我在三秒鐘內多次點擊圖像,它會啓動一個新的計時器。特別是如果我一秒鐘點擊5次圖像,它不會在三秒鐘內變化,但是當這三秒鐘到達時,它會在一秒鐘內變化5次。同時運行多個定時事件
有沒有辦法做一個if語句說:如果這個函數正在運行殺死當前運行的函數並啓動一個新的函數。通過這種方式,它將忽略圖像的前4次點擊,只運行第五次點擊,或者只運行第一次點擊並跳過其他四次點擊。
下面是代碼:
function auto_change(a,b) { // a is the current image and b calls a function that makes certain image visible, it works but need to fix the multiple clicks problem
if (document.getElementById(a).style.visibility == 'visible'){
setTimeout(b,3000);
return;
}
有助於解決一個問題,但會引發新的問題!我點擊,它會改變。如果我點擊它兩次,它只會改變一次。但之後,當我點擊它不再有效。此錯誤彈出不會彈出其他人:waitTime未定義 – Patrick
@帕特里克:我的部分錯字。我有'clearTimeout(waitTime)'(應該是'clearInterval(waitTimer)'。) –
是的,就是這樣。應該自己抓到了。現在我知道它行得通,我必須理解它。這裏有幫助嗎? – Patrick