1

setInterval 是否因电话设备而异?我正在尝试构建 HTML5 游戏以在许多不同的手机设备上运行。我正在使用 setInterval 进行动画和计时器,注意到 Galaxy SII 上的游戏速度高于 HTC Nexuse One 上的速度!!!HTC 需要超过 30 秒才能完成一个 20 秒的计时器!!!!任何想法 ?

4

1 回答 1

3

唯一的想法是测试setInterval移动设备上浏览器允许的最小值。

var date = Date.now();
setInterval(function(){
    var d = Date.now() - window.date;
    console.log(d);
}, 0 );

每个浏览器都有不同的价值;您也可以尝试测试requestAnimationFrame并嗅探它是否已实现,如果没有实现,您可以轻松找到它的代码并以这种方式使用它,即使它setInterval也使用它,但它考虑了帧速率和允许的最短时间每个浏览器。

于 2012-12-16T16:15:11.193 回答