0

HTML ページでサウンドを使用し、特定の時間にサウンドを再生する JavaScript 関数を作成しました。問題は、PC でページを読み込むと問題なく動作しますが、モバイルではサウンドが再生されないことです。なにが問題ですか?

<audio id="buzzer" controls="controls">
<source src="assets/sound/buzzer.mp3" type="audio/mpeg" />
function PlaySound1() {
    var audioElement = document.getElementById('buzzer');
    audioElement.setAttribute("preload", "auto");
    audioElement.autobuffer = true;

    var source1 = document.createElement('source');
    source1.type= 'audio/mpeg';
    source1.src= 'buzzer.mp3';
    audioElement.appendChild(source1);

    audioElement.load();
    audioElement.play();
};
4

4 に答える 4

1

ほとんどのモバイル ブラウザでは、オーディオの再生を開始するために直接物理的な操作が必要です。つまり、ページの読み込み時や非同期関数 ( など) で初期再生をトリガーすることはできませんsetTimeout

于 2013-07-26T21:03:22.457 に答える
0

ブラウザ サポートの表を確認しましたかhttp://www.w3schools.com/html/html5_audio.asp

于 2013-07-26T20:17:34.843 に答える
0

古いブラウザー用の Flash フォールバックが付属しているUbaPlayerを試すことができます。

サポート表 ( HTML5 Doctor: HTML5 Audio – The State of Playより)

Mobile Browser                              Version         Codec Support
Opera Mobile                                11.0+           Device-dependent
Android                                     2.3+            Device-dependent
Mobile Safari (iPhone, iPad, iPod Touch)    iOS 3.0+        MP3, AAC
Blackberry                                  6.0+            MP3, AAC
于 2013-07-26T19:43:11.610 に答える