我正在构建一个专门用于通过 Android 设备上的 Chrome 浏览器访问的网站,因此它是我唯一关心的让我的代码正常工作的浏览器。
我希望能够在单击对象时播放声音。但截至目前,它的响应速度太慢了,而且只有我每 4 或 5 秒点击一次,声音才能跟上。我希望能够快速敲击并保持声音跟上。
通过javascript播放音频(wav文件)以使其在Android平板电脑上通过Chrome正常运行的最佳方式是什么?
我目前正在使用<audio>
标签,然后使用 javascript 来播放文件。(通过我电脑上的 Chrome 浏览器,它运行良好,声音的速度还可以。但在 Android 平板电脑上,声音非常滞后。好像由于某种原因没有预加载声音,或者类似的东西,在平板电脑上)。
我当前的代码
<body>
在我的标签下方:
<audio id="audiotag1" src="ding.wav" preload="auto"></audio>
当用户点击屏幕时
function registerTouch(mouse) {
play_multi_sound('audiotag1');
}
var channel_max = 3; // number of channels
audiochannels = new Array();
for (a=0;a<channel_max;a++) { // prepare the channels
audiochannels[a] = new Array();
audiochannels[a]['channel'] = new Audio(); // create a new audio object
audiochannels[a]['finished'] = -1; // expected end time for this channel
}
function play_multi_sound(s) {
for (a=0;a<audiochannels.length;a++) {
thistime = new Date();
if (audiochannels[a]['finished'] < thistime.getTime()) { // is this channel finished?
audiochannels[a]['finished'] = thistime.getTime() + document.getElementById(s).duration*1000;
audiochannels[a]['channel'].src = document.getElementById(s).src;
audiochannels[a]['channel'].load();
audiochannels[a]['channel'].play();
break;
}
}
}