我正在创建一个适用于iPad的HTML5 web应用程序,但它也可以在PC浏览器上运行。我正在使用javascript函数setTimeout来同步一些屏幕切换和在后台播放的音频文件。
具体来说,我使用的代码是:
setTimeout(showStartScreen, 30000);
setTimeout(showInstructionScreen, 60000);在PC上,时间是完美的,过渡与音频很好地匹配。在iPad 2上,转换速度比在PC上快半秒左右。在iPad 3上,这一转变甚至更快。
有没有一种更可靠的跨平台计时的方法?
发布于 2012-09-22 10:03:18
您应该轮询音频的currentTime并对其执行操作,而不是创建超时并希望计时器保持同步。
setInterval(function() {
var now = audio.currentTime;
// do something based on the audio's position.
},25);这里假设您使用的是HTML5 <audio>元素。
https://stackoverflow.com/questions/12540077
复制相似问题