繁体   English   中英

Javascript:表格数据控件-如何在时间间隔上使用movenext

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM