2012-03-21 183 views
0

正在寫一些類似於鋼琴的腳本,這意味着當你點擊/觸摸/點擊按鈕時,它應該立即播放聲音。html5音頻:單擊時在ipad上播放「立即」聲音?

但問題是,它似乎需要時間(相對較多)來播放每個聲音一次點擊。

,因爲它看起來更像是流這需要時間來加載:/

是否有任何其他的方法,我可以用它來實現這一目標?

謝謝:d,(*,用於至少閱讀)

回答

1

執行此操作後DOMContentLoaded

yourAudioElement.play(); 
setTimeout(function(){ 
yourAudioElement.pause(); 
},1); 

這將迫使iOS的瀏覽器緩存資源

+0

禁用預加載的目的是爲了節省人們每月有限的帶寬消耗。我們不需要繞過這些人,所以他們可以在我們閱讀網頁時悄悄預載大量文件。所以-1。 – 2012-03-21 19:23:14

+0

有兩種選擇。 **預加載並毫不拖延地播放**或**不預載並等待加載**。你不能擁有兩個。如果你想媒體播放沒有滯後,你必須加載它。我不明白你的評論。 – Mohsen 2012-03-21 22:13:24

+0

我的評論對於我們這些擁有500MB(左右)數據計劃的人而言,像您這樣的人提供了預先加載視頻/音頻的解決方案。爲什麼我會希望人們在我的手機上預先加載內容,這很愚蠢。 – 2012-03-21 23:39:25

3

iOS裝置預加載<audio><video>被禁止以節省帶寬。

在Safari iOS上(對於所有設備,包括ipad公司),其中用戶可以 是蜂窩網絡上,並且每數據單元,預緊和 自動播放被充電被禁用。直到用戶啓動它纔會加載數據。

來源:Safari Developer Library

+0

我知道,(已被很多的谷歌搜索)這就是爲什麼即時通訊尋找某種黑客以另一種方式播放聲音。無論如何,再次感謝信息:D – cjmling 2012-03-22 01:52:21