動態改變setInterval的時間間隔


這段時間做抽獎的轉盤,需要實現抽獎轉速由慢變快的效果。這就需要在setInterval運行時動態縮短時間間隔來實現。在實際操作中我發現無法改變一個timer的時間間隔,而需要反復的運行,清除,再運行,再清除(定時器)。使用函數表達式和遞歸實現:

var counter = 10;
var myFunction = function(){
    clearInterval(interval);
    counter *= 10;
    interval = setInterval(myFunction, counter);
}
var interval = setInterval(myFunction, counter);

由於在運行時,setInterval立馬被清除,實際可用setTimeout代替。

 關於javascript timer運作原理的一片how javascript timer works


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM