使用Javascript播放音频元素(html5)

我正试图弄清楚如何触发从javascript播放音频。 我有一些看起来像的HTML:

foo

而我正试图触发它:

 $(document).ready(function () { $('.audio').each(function(){ var audio = $(this).find('audio').get(); $(this).click(function(){ audio.volume = 100; alert('1 '+audio); audio.play(); alert('2'); }); }); }); 

警报(’1’+音频); 按预期工作,并将音频报告为HTMLAudioElement。 但警惕(’2’); 没有被调用因为我得到错误’audio.play’不是一个函数。 我该怎么做才能解决这个问题?

你的代码看起来很完美 你得到的错误是“alert.play”不是函数或“audio.play”不是函数。

我认为

 var audio = $(this).find('audio').get(); 

返回一个数组试试这个

 var audio = $(this).find('audio').get(0); 

如果为音频标签提供ID,则使用JavaScript控制音频而不使用jQuery会更容易:

  

那么你可以简单地获取元素并应用.pause(),. start(),stop():

 var audio = document.getElementById("myAudioTagID"); audio.play(); audio.pause(); audio.stop();