下面的代码工作(警报弹出):
var sound = document.getElementById("music");
sound.addEventListener("play", function () {
alert("playing");
});
....
....
<audio controls id="music">
<source src="http://upload.wikimedia.org/wikipedia/commons/c/c8/Example.ogg"/>
</audio>
但为什么这个不行?
var sound = document.getElementsByClassName("music");
sound.addEventListener("play", function () {
alert("playing");
});
....
....
<audio controls class="music">
<source src="http://upload.wikimedia.org/wikipedia/commons/c/c8/Example.ogg"/>
</audio>
这不工作,要么万一getElementsByClassName方法返回不同的东西比的getElementById:
('.sound').addEventListener("play", function () {
alert("playing");
});
....
....
<audio controls class="music">
<source src="http://upload.wikimedia.org/wikipedia/commons/c/c8/Example.ogg"/>
</audio>
所有我改变了,而不是一个ID,我给它一个类(因为我有这样的音频播放器的多个实例),并使用getElementsByClassName方法代替的getElementById。 我还以为是getElementsByClassName方法与现在所有的浏览器兼容吗? 我使用的是最新的Firefox浏览器。