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

Jak*_*nge 2 javascript audio jquery html5

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

<div class='audio' >foo
<audio preload='auto' controls src='test.wav'>
<b>Your browser does not support the audio tag.</b>
</audio>
</div>
Run Code Online (Sandbox Code Playgroud)

而我正试图触发它:

$(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');
        });
    });
});
Run Code Online (Sandbox Code Playgroud)

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

Sha*_*oli 7

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

我认为

var audio = $(this).find('audio').get();
Run Code Online (Sandbox Code Playgroud)

返回一个数组试试这个

var audio = $(this).find('audio').get(0);
Run Code Online (Sandbox Code Playgroud)