2011-09-29 69 views
1

我一直在四處尋找嵌入音頻到網站的方法,有能力循環和自動播放功能也能靜音或取消靜音音頻與JavaScript。我知道這是可能的,很容易在html5中,但我聽說IE不支持HTML5(或音頻標籤也許)。嵌入IE瀏覽器中的音頻(7+)的JavaScript功能靜音或取消靜音

我還需要我的嵌入式音頻,早在IE7工作。所以我認爲,使用標籤將適用於所有其他瀏覽器,但IE瀏覽器,而我希望像IE可以工作;不幸的是,它不支持從javascript調用靜音和取消靜音 - 這是因爲我不希望音頻播放器的任何控件可見;只需一個自定義聲音按鈕,用戶可以單擊該按鈕來靜音和取消靜音。有任何想法嗎?看來,這樣的事情是最簡單的事情,但最難的地方就是代碼:/

+0

爲什麼是Flash不是一種選擇? – Joe

回答

5

考慮使用默認使用HTML 5的球員,但可以依傍的Flash,如果它不支持。

JPlayer能做到這一點,並具有mute function.

+0

感謝Pekka,我已經實現了JPlayer,並且靜音取消靜音功能起作用。但是,當我嘗試通過從javascript調用播放函數來實現自動播放時(文檔準備就緒時),它不會觸發。另一方面,把這個函數調用放在一個點擊處理程序中(例如),它會正確地觸發。任何想法,爲什麼它會觸發一個處理程序中而不是在文件準備呼叫被處理(這本身,就是處理程序,不是嗎?) – Prusprus

+0

@user IIRC,jPlayer有自己準備的事件 - 我認爲這是這一個:HTTP: //jplayer.org/latest/developer-guide/#jPlayer-option-ready –

+0

是的,謝謝,工作。在就緒功能中添加播放和循環功能可以正確設置播放器。謝謝你的幫助! – Prusprus

0

HTML5是你最好的選擇。

<audio> 
    <source src="horse.ogg" type="audio/ogg" /> 
    <source src="horse.mp3" type="audio/mp3" /> 
    <!-- 
     You can put a flash player here in case the users browser doesn't support HTML5 or any of the audio formats you have added. 
    --> 
</audio> 

你可能想在音頻標籤指定屬性controls='controls'讓喜歡打暫停和音量控制包括靜音播放選項; loop='loop'啓用自動循環; autoplay='autoplay'顯然要自動播放;和preload='auto'加載頁面加載音頻(你也可以指定「元數據」或「無」)

您的播放器可能會看起來像:

<audio preload='auto' autoplay='autoplay' controls='controls' loop='loop'> 
    <source src="yoursound.ogg" type="audio/ogg" /> 
    <source src="yoursound.mp3" type="audio/mp3" /> 
    <!-- 
     Flash player here to fall back on if the users browser doesn't support HTML5 
    --> 
</audio>