2015-11-22 178 views
1

我試圖每次在文本框中輸入內容時播放聲音。我的代碼是:用JavaScript播放聲音(oninput)

var snd = new Audio('http://www.soundjig.com/pages/soundfx/beeps.php?mp3=beep1.mp3'); 
 

 
function click(){ 
 
snd.play(); 
 
} 
 

 
function intro2(){ 
 
    alert("OK!"); 
 
    }
<input id="name" onchange="intro2()" oninput="click()">
正如你所看到的,平變化的作品,但oninput不....

的jsfiddle:JSFiddle link

我不知道爲什麼會這樣不起作用....你能幫忙嗎?

對不起,如果這是一個壞的問題;我是編程新手。

回答

1

您的代碼工作正常。 oninput事件將在input標記上的值發生更改時觸發。當您點擊input時,它不會觸發。

對於測試,請在輸入上鍵入文本,然後您的功能將被觸發並播放音頻。

OR

如果要播放音頻與輸入click事件,那麼你可以附加click事件類似。

<input id="name" onchange="intro2()" onclick="click()"> 
+0

我做了測試,但由於某些原因,聲音不工作。 – Stardust

+0

好的,我修好了。顯然,我把腳本放在HTML文檔的錯誤位置。謝謝! – Stardust

1

希望這是你想要的。讓我知道如果我需要改變它。

var snd = new Audio('http://www.soundjig.com/pages/soundfx/beeps.php?mp3=beep1.mp3'); 
 
document.getElementById('name').oninput = function() { 
 
    snd.currentTime = 0; 
 
    snd.play(); 
 
};
<input id="name">

+0

這是一個很好的答案。謝謝! – Stardust