我正在为JavaScript/HTML5(最终应该是FirefoxOS应用程序)的节拍器兴趣爱好。我遇到的问题是抖动,这对于节拍器来说是不可行的。我知道JavaScript是单线程的,并且不存在关于进程优先级的控制。这是我有:减少在HTML5/Javascript应用程序中的抖动
function tick() {
var next_tick_bpm = parseInt(document.getElementById("bpm").value);
if (started) {
if (next_tick_bpm > 0) {
var next_tick_ms = 60000/next_tick_bpm;
beep();
setTimeout(tick, next_tick_ms);
} else {
toggle();
}
}
}
还有其它的东西,除了的setTimeout(我也试过的setInterval相同的结果)?也许一些本地浏览器代码更精确的计时器?
感谢,
- 约翰内斯
嗨,别人谁可以寻找FirefoxOS精确定时的要求?我没有机会在本地的FirefoxOS手机上试用,但我想setInterval和朋友的准确性会受到限制。有人知道firefoxOS下的工作节拍器应用程序吗? –