2010-09-08 170 views
1

我正在處理html5音頻並且遇到了一些緩衝區問題。這在Chrome中非常出色,但是在Safari(和SafMob)中存在明顯的延遲。這個想法很簡單。用戶點擊img鏈接,img「跳轉」併發出聲音。 Here is an exampleHtml5音頻/ jQuery:播放延遲問題(預加載)

有沒有辦法預先加載聲音文件,以便它播放更快?同樣,我主要關心的是Safari/Safari Mobile瀏覽器。

jQuery的我使用:

$("#bell a").click(function() { 
    var snd = new Audio("ping.mp3"); 
    snd.play(); 
    $(this).stop().animate({ marginTop: "-10px" }, 200).animate({ marginTop: "18px" }, 200).animate({ marginTop: "1px" }, 300); 
return false; 
}); 

這是按鈕的代碼:

<ul id="bell"> 
    <li class="button"><a href="#" title="Pling">Link Text</a></li> 
</ul> 

回答

0

預緊其實需要的值,自動之一,元或自動。雖然我認爲默認行爲是下載整個文件。

還有一點:Playing with audio files或來自規範本身:preload attribute

不知道這是否有幫助。

1

避免在每次單擊全局變量時單擊創建一個新的音頻元素,以便重用現有實例。

然後用snd.cloneNode(true).play();

更換snd.play();對於我來說,做出了巨大的差異。