2012-03-06 21 views
1

これはコードです:なぜこの非常に単純なJavascriptコードは機能しませんか?

<html> 
<head> 

<script type="text/javascript"> 
function f1() 
{ 
    document.getElementById("test2").innerHTML="<audio src=\"2.wav\" autoplay> </audio>"; 

} 
</script> 
</head> 
<body> 

<input type="button" onclick="f1()" value="Playyy!" /> 
<span id="test2"> 
</span> 


</body> 
</html> 

私もそれがこっちに使用するファイル2.WAVでコードをアップロードした: http://aafe6m96.facebook.joyent.us/test1.html

+2

あなたはどのような結果を期待していましたか? – IsisCode

+1

それが機能していないということを正確に記述すると役に立ちます。 – Pointy

+0

Firebug:十分な引数がない[nsIDOMWindow.alert] [このエラーで中断する] \t alert(); –

答えて

1

まだ自分を殺さないでくださいために互換性のあるフォーマットを見つけることができます。まずは試してみてください:

document.getElementById('test2').innerHTML='<audio src="2.wav" autoplay> </audio>'; 

つまり、HTMLではエスケープもヒップラインもありません。不明です。

これは役に立たない場合は、ドキュメントに新しいaudio要素を作成してください。

newAudio=document.getElementById('test2').appendChild(document.createElement('AUDIO')); 
newAudio.src='2.wav'; 
newAudio.autoplay=true; 
+1

働いている人はいませんが、テクニック#2を教えてくれてありがとう。 私はこれを試してIE9で働いた: 'newAudio = document.getElementById( 'test2')。appendChild(document.createElement( 'EMBED')); newAudio.hidden = true; newAudio.src = '2.wav'; newAudio.start = true; newAudio.play(); ' まだChromeでは動作しません。明らかにクロムは埋め込みタグでうまく機能しません。 – GrowinMan

4

あなたが取得しているエラーメッセージは、あなたがalertのためにと言っています1つのパラメータを渡す必要があります。あなたがするtryngているもの

+0

このエラーはFFでのみ表示されるようですが、他のブラウザでは空のアラートボックスが表示されます。 – Teemu

+0

それはうまくいくと私は自分自身を殺してしまいました! @ Teemuが言ったように、空白のアラートボックスが表示されるだけです。それが問題だとは思わないでください。 とにかく、同じページでコードを変更しました。まだ動作しません。リンクを再度確認してください。 これは楽しいです!私は実際にそのようなものが動作していない割り当てに取り組んでいます、そして、私はその事に5時間を無駄にしました。 – GrowinMan

2

わからない:

  1. あなたalertが空である、のようなものを読んでください:
    alert('Your message here')

  2. ような何かお読みくださいあなたの要素:
    document.getElementById("test2").innerHTML="<audio src=\'2.wav\' autoplay>"
+0

私の答えのコメントに記載されているように、文字列の値はすでにエスケープされています:) –

+0

仲間を助けません。 – GrowinMan

0

あなたはクロムでテストしていますか?代わりにmp3で試してみるか、ソースタグで試してみてください。

は、このリンクには、各ブラウザ http://html5doctor.com/native-audio-in-the-browser/

+0

私はそれを試みることができると思います。しかし、事は、私はそれの上に非常に多くの時間を無駄にした、私はこれを引き起こしていることを知っていることが切望している。 – GrowinMan

+0

まず第一に落ち着いて、ビールheheを持っています。どのブラウザでテストしましたか?ファイアフォックス、クロム、IE? (btwあなたが解決しようとしている実際の問題で他人を誤解しているように思われるので空の警告()を削除することをお勧めします) – jambriz

+0

アップロードされたファイルで空の警告を削除しました。私はインラインコードからも削除します。とにかく、私は非常に信じているように私はクロームで働いていました - ルーキーミス。ちょうど1分前に、私がChrome上でIE 9で試したコードのすべてのバリエーションを試してみました。その1つは、私が望むように機能しました。 Teemuのコードに関する私のコメントを見てください:) – GrowinMan

関連する問題