2013-05-07 127 views
0

以下代碼是我將音頻放入網頁的方式。當我從我的從設備接收到協議時它會播放聲音。僅在谷歌瀏覽器中以HTML格式播放過的音頻

<script> 
function RxProtocol() 
{ 
    var a = document.getElementById("audio1"); 
    a.play(); 
} 

</script> 

<body> 
<audio id="audio1"> 
<source src="audio.wav" type="audio/wav"> 
<source src="audio.mp3" type="audio/mpeg"> 
audio tag not supported. 
</audio> 
</body> 

假設每次收到協議時播放聲音。但是,當我使用谷歌瀏覽器,它只是播放一次(刷新/重新加載頁面後),當它收到第一個協議。之後,它在接收協議時是無聲的。

其他類似IE9或Firefox的瀏覽器沒有這個問題。你們知道爲什麼嗎?

回答

1

嘗試增加的addEventListener:

<script> 
function RxProtocol() 
{ 
    var a = document.getElementById("audio1"); 
    a.play(); 
} 

document.addEventListener("load", RxProtocol, false); 

</script> 

的問候,丹尼爾

+0

我想知道這是什麼事件偵聽器? – Coolguy 2013-05-07 09:09:53

+0

我試過了,但仍然是同樣的問題。 – Coolguy 2013-05-07 09:16:07

+0

使用document.addEventListener(「load」,RxProtocol,false);文檔加載後執行函數RxProtocol。您使用偵聽器來偵聽文檔的加載事件 – 2013-05-07 09:55:11

0

我們首先需要加載谷歌瀏覽器:

function RxProtocol() 
{ 
    var a = document.getElementById("audio1"); 

    if (window.chrome) { 
     a.load(); 
    } 

    a.play(); 
} 
相關問題