Opera mini中不显示Javascript倒计时



所以我有这个倒计时脚本,它几乎在每个浏览器中都能正常工作,但在opera mini中却不行。它显示了一个空白区域。这是我的代码:

timer={
times:[],
init:false,
callback:function() { window.location.reload(); },
new:function(time)
{
    timer.times[timer.times.length]=time;
    document.write("<span id='timer_"+(timer.times.length-1)+"'>"+timer.format(time)+"</span>");
    timer.start();
},
format:function(time)
{
    days=Math.floor(time/(60*60*24));
    hours=Math.floor(time%(60*60*24)/(60*60));
    mins=Math.floor(time%(60*60)/60);
    secs=Math.floor(time%60);
    return (mins<10?"0":"")+mins+":"+(secs<10?"0":"")+secs+"";
},
ticker:function()
{
    for(var i=0; i<timer.times.length; i++)
    {
        if(timer.times[i] == 0) { timer.callback(); break; }
        document.getElementById("timer_"+i).innerHTML=timer.format(timer.times[i]);
        timer.times[i]--;
    }
},
start:function()
{
    if(!timer.init)
    {
        timer.init=true;
        setInterval(timer.ticker, 1000);
    }
}
}

代码有问题吗?

谢谢你的帮助。

只需在opera mini控制台中检查代码中的错误。在opera mini中打开您的页面,并在地址栏中写下:

server:console?post=http://path_to_your_page

此外,Opera Mini有javascript定时器限制-它在2-5秒后停止任何定时器(取决于Opera Mini版本)。在我的Android上,计时器在5秒后停止(fiddle)。

计时器在operamini中的工作方式不同,Readhttps://dev.opera.com/articles/opera-mini-content-authoring-guidelines/

复制自上述链接,使用setTimeout()和setInterval()注册的代码可能会在发送页面之前运行,但由于脚本暂停

,它不太可能被调用多次

最新更新