希望有人能幫助,這是推動我瘋了......預加載的聲音文件
我工作的企業內部網應用程序,我需要預裝了大量(106!),MP3文件。我預加載這些像這樣...
for (i=0; i<mp3Files.length; i++) {
soundSpan = document.createElement("span")
soundFileLocation = "http://wss/sites/TDABQ/" + mp3Files[i]
soundSpan.innerHTML="<embed src='" + soundFileLocation + "' hidden='true' autostart='false' loop='false' />"
document.body.appendChild(soundSpan)
}
這項工作,但需要一段時間,但遲到的加載不是問題。
問題是我找不出一種方法來確定何時加載所有文件,以便我可以提示用戶頁面已準備就緒。
問題:
這有可能在Internet Explorer 6工作,使排除了HTML5 /音頻
我無法加載任何東西到服務器上該應用程序的存儲位置(是真的) (不要問)到目前爲止排除SoundManager。當它與應用程序位於同一服務器上時,我可以使SoundManager正常工作,但是嘗試從另一臺服務器加載SoundManager會導致Flash> JS(或它是JS> Flash)安全設置問題。這些設置無法在客戶端PC上更改。
我試過使用JQuery的Ajax和獲取方法,但由於某種原因無法讓它做Ajax調用跨域例如下面的代碼永遠不會顯示警告框
$(文件)。就緒(函數(){
$獲得(網址:{url: 「HTTP://wss/sites/TDABQ/field1.mp3」 crossDomain:true,success:function(){alert('yes!')}});
});
因此,我使用Embed標籤來進行預加載。嵌入代碼似乎無法響應onLoad或onReadyStateChange事件處理程序。
我已經江郎才盡......
如何才能知道當所有的文件已加載???
'$(「#yourEmbed」)。ready();'? – 11684 2012-07-26 21:16:19
您是否爲SoundManager設置了[crossdomain.xml](http://kb2.adobe.com/cps/142/tn_14213.html)? – Esailija 2012-07-26 21:28:11
@Esailija對不起,但我不熟悉crossdomain.xml。是否將名爲crossdomain.xml的文件放置在包含SoundManager文件的服務器的根目錄或包含使用SoundManager的網頁的服務器的根目錄中? – user1555329 2012-07-26 22:00:15