[英]Javascript: Tabular Data Control - how to use movenext on a time interval
我已經使用表格數據控件從.txt
文件中讀取數據,但是我想做的是使數據按時間間隔更改(最近的數據將由下一個數據替換)。
我考慮過使用.moveNext()
和delay,但是似乎我弄錯了delay實現。
var rs2 = CHAR.recordset;
var delay;
function set()
{
if(!rs2.EOF && !rs2.BOF)
{
var temp = "Characters/"+rs2(1);
document.getElementById('txt').innerHTML = rs2(0);
document.getElementById('pic').src = temp;
}
}
function begin()
{
rs2.moveFirst();
set();
delay = setTimeout(move(2), 1000);
}
function move(idx)
{
switch(idx)
{
case 1: if (!rs2.BOF) rs2.movePrevious();
else rs2.moveLast();
break;
case 2: if (!rs2.EOF) rs2.moveNext();
else rs2.moveFirst();
break;
}
set();
if(delay)
clearTimeout(delay);
delay = setTimeout(move(2), 1000);
}
當執行delay
(我認為),腳本將變得無響應。 我認為這是因為它進行了太多的遞歸,但我不知道如何解決它。
我為此做了另一個功能,我認為這更方便。 它可以幫助move()
專注於自己的工作(稍后將進行調用),同時在正確的時間間隔上進行遞歸。
這是函數:
function automove()
{
if (!rs2.BOF) rs2.movePrevious();
else rs2.moveLast();
set();
if(delay)
clearTimeout(delay);
delay = setTimeout(automove, 2000);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.