音频无法准备音频'属性'未定义

时间:2015-05-20 02:10:08

标签: javascript jquery html5-audio

我的html中有这个音频标签

<!-- audio -->
    <audio>
    <source src="core/music/error.ogg" type="audio/ogg">
    <source src="core/music/error.mp3" type="audio/mpeg">
    <!-- end of audio -->
</audio>

然后这个暂停音频的脚本

var audio = document.getElementsByTagName("audio")[0];
audio.pause();

然而我收到错误说&#34; Uncaught TypeError:无法读取属性&#39;暂停&#39;未定义&#34;。任何想法或线索上面的代码有什么问题?

1 个答案:

答案 0 :(得分:1)

问题是元素尚未添加到DOM中,因此getElementsByTagName无法找到目标audio元素。您可以将脚本移至body标记的末尾,也可以收听DOMContentLoaded事件。

document.addEventListener("DOMContentLoaded", function(event) {
    var audio = document.getElementsByTagName("audio")[0];
    audio.pause();
});