我試圖讓jquery函數在列表中通過遞增/遞減來在不同的數字在相同的時間範圍在需要的地方。這就是我有一個列表:jQuery函數來連續運行,接近列表中的數字
// (initialised outside the function scope)
var numbers = [10, 5, 13, 1, 1000];
var curNumber = 0;
var i = 0;
該函數應採取相同數量的時間(例如1秒),因爲它從curNumber = 0 to number[4] = 1000
會從curNumber = 0 to number[0] = 10
達到。在上面的列表中,代碼將在1秒內完成每個循環,從0到10到5到13到1到1000(如果最初爲curNumber = 0
,總共5秒)。
什麼我的目標是一個簡單的函數來連續運行,如:
while(true) {
if (curNumber < numbers[i])
curNumber++;
else if (curNumber > numbers[i])
curNumber--;
if (curNumber == numbers[i]) {
alert(numbers[i] + " number reached!");
i > numbers.length ? i = 0 : i ++;
}
}
計時器按鈕看起來像這樣:
$("#start").click(function() {
myTimerFunction();
});
我應該利用VAR refreshId的= setInterval(function(){},1000);功能? - 或者它只是每1000毫秒運行一次函數,這與數字接近的速度無關。
更改比率,而不是像動態一樣,只是靜態地,該函數始終以相同的比率運行,但在將來的時間我可能希望它以1/2秒的速度運行,等等。 –