7

IE9 の JavaScript コードの一部に問題があります。

ページを開始すると、次のエラーが表示されます: Unexpected call to method or property access .

これはhtmlファイルの私のオーディオタグです:

<audio controls loop preload id="musicGame">
  <source src="mp3/ambient.ogg" type="audio/ogg" />
  <source src="mp3/ambient.mp3" type="audio/mpeg" />
</audio>

次のように、JavaScriptでオーディオタグを呼び出しています。

musicGame = $('#musicGame')[0];

次に、ミュートボタンがあり、ミュートが機能するためにページ上のすべての曲を一時停止する必要があるため、一時停止しています。

musicGame.pause();

これは、IE9 がエラーをスローする場所です。

何が間違っている可能性がありますか?

4

3 に答える 3

2

oogIE ではサポートされていませんがmp3、IE9+ ではサポートされています。

preloadIE9 では属性に問題がある可能性があるpreloadため、属性を設定してみてください。preload="metadata"

<audio controls loop preload="metadata" id="musicGame">
   <source src="mp3/ambient.ogg" type="audio/ogg" />
   <source src="mp3/ambient.mp3" type="audio/mpeg" />
</audio>
  • metadata : オーディオ メタデータ (長さなど) のみが取得されることを示します。また、ブラウザーは、サイズ、サイズ、期間などのメタデータを取得するのに十分なファイルをダウンロードすることもできます。

時々preload="auto"うまくいくかもしれませんが、テストする必要があります!?

代わりに、子要素なしで、audio要素src属性でオーディオ ソースを指定する必要がある場合があります。source

<audio src="mp3/ambient.mp3" controls autoplay loop  id="musicGame"> 
    HTML5 audio not supported
</audio>

DOCTYPEまた、HTML5の権利を使用していますか?

<!DOCTYPE html>

meta tagそして、このようにIE9の権利を使用していますか?

<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">

そして、使用する代わりに、使用$('#musicGame')[0]しようとしましたか?

document.getElementById("musicGame");

役立つリソースのリンク:

于 2015-11-24T15:53:11.917 に答える
0

DOCTYPE 宣言<!DOCTYPE html>を HTML コードの先頭に追加します。標準準拠モードでページをレンダリングする方法をブラウザーに指示します。HTML5これでオーディオは IE9 で動作します。

于 2014-09-02T11:09:49.993 に答える
0

Mp3 は動作しますが、IE の問題は .wav と .ogg の再生です。

IE9 で動作 - Chrome - Safari および firefox

var sound = new Audio("/pop.mp3");
sound.play();
于 2012-08-17T09:14:17.187 に答える