7

我正在构建一个移动优化网站,并希望在柜台结束后播放声音。通常,在 2 分钟或更长时间后。

问题是一旦手机屏幕关闭,手机就会禁用我的js,并阻止音频播放。

潜在解决方案:

我读了这个 在解决方案#3中,您可以顺序循环播放2首曲目,即使屏幕关闭,手机仍会播放这两个曲目。所以我发现的诀窍是使用那个循环,但有第一个声音:1.保持沉默。是的,完成 5 分钟的静音音频 2. 在足够的时间播放第二首歌曲之前,让它循环所需的次数。

因此,例如,在这里,静音音频将在其他声音播放之前播放两次。诀窍是控制max变量以实现所需的输出。

var count = 0;
var max = 2;
document.getElementById('silence_audio').addEventListener('ended', function () {
    this.currentTime = 0;
    this.pause();
    if (count < max) {
        document.getElementById('silence_audio').play();
        count++;
    } else {
        document.getElementById('audio_4').play();
    }
}, false);

document.getElementById('audio_4').addEventListener('ended', function () {
    this.currentTime = 0;
    this.pause();
    document.getElementById('silence_audio').play();
}, false);

但我的问题是,还有其他更好的解决方案吗?

谢谢!

4

0 回答 0