2012-01-31 12 views
4

各行に文字列とボタン(再生音)を含むテーブルを作成し、すべてのボタンが異なるサウンドを再生します。JavaScriptを使用して音を鳴らす

私はこの方法でそれをやってみたい:

<script> 
function EvalSound(soundobj) { 
    var thissound=document.getElementById(soundobj); 
    thissound.Play(); 
} 
</script> 

<embed src="success.wav" autostart=false width=1 height=1 id="sound1" 
enablejavascript="true"> 

、これはボタンです:

<form> 
<input type="button" value="Play Sound" onClick="EvalSound('sound1')"> 
</form> 

問題は、私はここにしたいということです。

<input type="button" value="Play Sound" onClick="EvalSound('sound1')"> 

ファイルを書き込むe URLを 'sound1'の代わりに使用すると、このようにすることは可能ですか?または私はコード内の別のものを変更する必要がありますか?

編集:

<script> 
    function EvalSound(soundobj) { 
    var embed = document.createElement('embed'); 
    embed.setAttribute('width',1); 
    embed.setAttribute('height',1); 
    embed.setAttribute('src',soundobj); 
    embed.setAttribute('autostart', false); 
    embed.setAttribute('enablejavascript', true); 
    embed.Play(); 
    } 
</script> 

をしてて、これを呼び出す:

は、私はこのようなスクリプトを構築

<form> 
    <input type="button" value="Play Sound" onClick="EvalSound('sound url')"> 
</form> 

、それはまだ音を再生しません。

答えて

5

あなたは次のようにそれを達成することができます

は、あなたがあなたのコードを容易にするためにはJavaScriptフレームワークを使用することができ

<span id="dummy"></span> 
<a href="#" onclick="playSound('URL to soundfile');">Click here to hear a sound</a> 

<p onmouseover="playSound('URL to soundfile');">Mouse over this text to hear a sound</p> 
+0

私の投稿を編集します。変更を見ることができますか? – MTA

+0

このページをチェックすることを忘れないでください。その解決策は、アンカーに関連付けられたテキストを削除します:http://forum.codecall.net/topic/49572-play-sound-on-click/ – dialex

1

注:これはHTML5ではありません。 thissound.srcでソースを入手できます。次に、あなたが置いておきたい場所にDOMを追加することができます。

0

WebページでHow to Play a Sound on Click or on MouseOver

<script language="javascript" type="text/javascript"> 
function playSound(soundfile) { 
document.getElementById("dummy").innerHTML= 
"<embed src=\""+soundfile+"\" hidden=\"true\" autostart=\"true\" loop=\"false\" />"; 
} 
</script> 

ブログ参照してください。 Scriptaculousのページを見てみましょう:私の知識「のjQuery」に

http://madrobby.github.com/scriptaculous/sound/

がとてもよく、音のために任命されていない、しかし、私はそのためのプラグインがあることを推測します。

あなたのサウンドファイルをリンクまたは 'rel'リンクとして配置し、ボタンにオブザーバーを持ち、きれいなHTMLと小さなスクリプトで再生することができます。

関連する問題