我在倒带Java音频时遇到了一些麻烦。我基本上有一个倒计时,在倒计时结束时每秒都会发出哔哔声。

我尝试使用;

var bip = new Audio("http://www.soundjay.com/button/beep-7.wav");
bip.play();

但是它并没有每秒发出哔哔声,我想这与每秒加载一次新声音有关。然后,我尝试从外部加载声音并使用以下代码触发它。
bip.pause();
bip.currentTime = 0;
console.log(bip.currentTime);
bip.play();

但这只会播放一次声音,然后完全无法倒退(控制台在第一次播放后记录的时间为0.19秒,这表明了这一点)。

我在这里想念什么吗?

最佳答案

在谷歌浏览器中,我注意到只有在相同域中有音频文件时,它才有效。如果音频文件在同一域中,我没有问题。事件设置.currentTime有效。

跨网域:

var bip = new Audio("http://www.soundjay.com/button/beep-7.wav");
bip.play();
bip.currentTime; //0.10950099676847458
bip.currentTime = 0;
bip.currentTime; //0.10950099676847458

同域:
var bip = new Audio("beep-7.wav");
bip.play();
bip.currentTime; //0.10950099676847458
bip.currentTime = 0;
bip.currentTime; //0

我尝试了一段时间,但在规范中找不到关于此甚至任何讨论的信息。

08-24 22:08