无法为 javascript 中的音频设置 currentTime(仅限 IOS)

Can't set currentTime for audio in javascript (only IOS)

我想创建一个允许用户从第 20 秒开始播放音频的脚本,它在所有浏览器和设备上运行良好,IOS 除外。 这是代码

document.addEventListener('DOMContentLoaded',function(){
    var audio = new Audio();

    document.getElementById('play').addEventListener('click',function(){
        audio.src = "test.mp3";
        audio.play();
        audio.pause();
        audio.currentTime = 20;
        audio.play();
        alert(audio.currentTime);
    });
});

调试时,在IOS浏览器上,如在iphone上chrome,alert值为0秒,其他情况return20.音频播放通常情况下。 我错在哪几点?感谢帮助!

确保您没有在音频元素加载之前尝试调用它。

这是一篇很好的文章,解释了 iOS 上的一些错误。

iOS Audio Bug Workarounds

这是一篇较旧的文章,但 iOS 上仍然存在许多相同的问题。

阅读这个 Whosebug post 以获得一系列好的答案

Whosebug audio solutions