javascript - HTML5 音频随机播放

标签 javascript html audio

我正在 HTML5 音频中实现音效,但过了一会儿,它就停止播放任何音频。文件类型是正确的,因为它开始时很好,但后来似乎放弃了。

var sound = new Audio(url);
function play() {        
    sound.play();
}

有没有更好的方法来做到这一点,让它始终如一地播放声音?

这是我的实现的链接。通过多次按下空格键直到它最终放弃(也可以拍摄灯光以增加声音)来轻松重现。 http://craftyjs.com/elevatoraction/

我在最新版本的 Chrome (8.0) 中出现这种情况

编辑:我按照 Gaurav 的建议做了,只播放了每个声音文件的相同实例,但出现了同样的问题。它会任意停止播放。

编辑 2: 我刚刚注意到,每当我尝试播放声音时,networkState 始终是 1,根据 this意味着它还没有完全加载。这很奇怪,因为它有时仍在播放,即使在播放时 networkState 始终为 1

最佳答案

不要在每次要播放声音时都创建新的音频对象,重复使用相同的资源。

var sound1 = new Audio(url);
function playSound1() {
    sound1.play();
}

我认为这与错误 http://code.google.com/p/chromium/issues/detail?id=57070 有关

关于javascript - HTML5 音频随机播放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4435009/

相关文章:

javascript - 解释 document.getelementbyid.innerhtml 如何打印文本

iphone - 以编程方式将内容添加到音乐库

java - 从IPCAM播放音频流的极端延迟

javascript - 我可以设置 Javascript 对象的类型吗?

javascript - React 组件构造函数和 componentWillReceiveProps 中的常用代码

javascript - 两名服务人员排成一列

javascript - 在 Xulrunner 应用程序中信任 https url 的自签名证书

jquery - 遍历 div 内的文本节点

javascript - 如何使 jQuery 对话框在 IE8 中的页面加载时不显示?

iphone - iPhone声音:在播放时调整音频文件的播放速度