2011-11-16 173 views
4

我想在我的網站中預加載音頻文件。我在html頁面中使用下面的代碼。預加載音頻文件

<embed src="cheer.swf" hidden="true" autostart=false style="height:0px; width:0px"> 
<embed src="click.swf" hidden="true" autostart=false style="height:0px; width:0px"> 
<embed src="doowip.swf" hidden="true" autostart=false style="height:0px; width:0px"> 

但仍然所有的音頻文件都在頁面的開頭播放。我如何停止音頻文件的自動播放。

另外我怎樣才能預加載的iPad的Safari瀏覽器的文件?

<audio id="genclick" src="click.wav" type="audio/wav" > 
<audio src="doowip.wav" type="audio/wav" > 
<audio src="cheer.wav" type="audio/wav" > 

上面的代碼不加載該文件,直到我從JavaScript玩..

document.getElementById("genclick").play(); 

我要去哪裏錯了?

回答

2

根據http://kb2.adobe.com/cps/127/tn_12701.html你正在尋找的參數名稱(SWF文件「嵌入」標籤)是「玩」 ,而不是'自動啓動'。因此,將其更改爲:

<embed src="cheer.swf" hidden="true" play="false" style="height:0px; width:0px" /> 

你也可以把它們中object標籤,然後使用:

<param name="play" value="false" /> 

我測試過這個自己,和它的作品。至於iPad Safari的標籤,HTML5音頻標籤有一個名爲'preload'的屬性,當設置爲'auto'時應該預先加載文件。嘗試:

<audio src="doowip.wav" type="audio/wav" preload="auto" /> 

我希望這有助於。

+0

感謝您的答案。請閱讀上面的評論TeaTanG的答案。我怎樣才能使音頻文件存儲在iPad的Safari瀏覽器緩存,以便他們播放快速,順利? – nkchandra

+0

與使用WiFi相比,您正在使用3g連接測試iPad嗎?由於根據[this](http://developer.apple.com/library/safari/#documentation/AudioVideo/Conceptual/Using_HTML5_Audio_Video/Device-SpecificConsiderations/Device-SpecificConsiderations.html)文檔,iOS Safari會禁用_autoplay_和_preload_屬性當使用蜂窩網絡......在這種情況下,看起來在這種情況下,你真的受到蘋果公司的擺佈。 – garmur

+0

我正在使用WiFi連接! – nkchandra

1

還沒雖然檢查,但你可以預載文件做這樣的事情:

 
<EMBED NAME="mySound" SRC="cheer.swf" 
LOOP=FALSE AUTOSTART=FALSE HIDDEN=TRUE style="height:0px; width:0px"> 
+1

最新差異?我沒有找到任何改變,仍然是自動播放 – nkchandra

1

對於HTML5音頻標籤的自動播放是一個布爾值:

<audio controls="controls" autoplay="autoplay"> 
    <source src="song.ogg" type="audio/ogg" /> 
    <source src="song.mp3" type="audio/mpeg" /> 
    Your browser does not support the audio element. 
</audio> 

至於你應該檢查自動播放屬性未設置在各該文件的硬編碼的SWF文件。

+0

我不想自動播放音頻,我希望它們被預加載和緩存..這樣我就可以在需要時播放它們。但我觀察到wt是,ipad safari每次下載音頻文件的新副本 document.getElementById(「genclick」)。play(); 在同一頁面中執行。 – nkchandra