1

これはhtml5オーディオを再生するための私のコードです(これは機能しません)

$('img.play_media').bind('click',function(){
src=$(this).attr("id");                     $('audio[id=resource_audio]').children('source').attr("src","testuser/resources/"+src);
var audio= document.getElementById('resource_audio');
audio.play();
return false;
});

<audio id="resource_audio" >
<source src="" type="audio/mp3" />
</audio>

ご覧のとおりsrc、画像IDに設定されているon imgクリックを取得しようとしています。オペラでは、再生が開始されているのがわかります。ただし、音声は再生されません。どんな助けでも大歓迎です。
ありがとう。

4

2 に答える 2

0

imgのHTMLを提供してください。私はあなたのコードを少しクリーンアップしましたが、おそらくあなたの問題には役立たないでしょう:

$('img.play_media').click(function(event){
  $("#resource_audio")
    .attr("src","testuser/resources/"+this.id)
    .get(0).play();
});

<audio id="resource_audio">
  Your browser does not support the <code>audio</code> element.
</audio>
  • 注:次の2つを確認してください。a)オーディオファイルが実際に正しい場所にある、b)Webサーバーが正しいMIMEタイプでサービス(応答)するように構成されている。

https://developer.mozilla.org/en/HTML/Element/audioも参照してください。

<html>
<head>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
</head>
<body>
    <h1>Heading</h1>
    <div id="doc">
        <img class="play_media" id="test.mp3" src="status-on.png" style="width:15px;margin-right:0%;" > 
        <audio id="resource_audio">
          Your browser does not support the <code>audio</code> element.
        </audio>
    </div>
    <script>
    $('img.play_media').click(function(event){
      $("#resource_audio")
        .attr("src",this.id)
        .get(0).play();
    });
    </script>
</body>
</html>
于 2012-08-03T00:25:58.833 に答える
0

ソースタグにバインドされたサウンドがすでに含まれていない限り、動作させることができます:http: //jsfiddle.net/webwarrior/b2cUz/22/

ソースではなく、オーディオのソース属性を更新する必要があります。

重要な点は次のとおりです。jQuery('#resource_audio').attr("src",srclink)[0].play();

しかし、この男はそれを機能させているようです:http: //css-tricks.com/play-sound-on-hover/

これがあなたを正しい方向に向けることを願っています。

于 2012-08-03T00:55:32.010 に答える