2010-10-06 36 views

回答

0

當前版本的移動Safari(iOS 5.0.1)的音頻HTML5支持較差。音頻對象的播放方法會偶爾工作,但只能由於直接用戶點擊而無法預先加載(預計首次播放時出現隨機延遲)。這使得此時在iPhone Web應用程序中使用音頻不切實際。

1

也許你可以使用一個JS事件,發送事件到你的UIWebView的委託,然後播放聲音在目標C?

最好的解決辦法,我認爲^^

對於HTML5的解決方案我不知道。 你可以看看 Sound effects in JavaScript/HTML5

但我不確定這個解決方案可以在所有設備上工作。這取決於你是否需要「經常」播放聲音。

+0

包括的鏈接可能是你以後的。 – 2010-10-14 06:39:10

0

如果在Chrome中發現了一些問題,但似乎可以在其他主流瀏覽器中使用。

HTML:

<audio id="sound_example" title="Sample" autobuffer> 
    <source src="sample1.wav" type="audio/x-wav"> 
    <source src="sample2.ogg" type="application/ogg"> 
    <source src="sample3.mp3" type="audio/mpeg"> 
</audio> 

的Javascript:

var playThis = document.getElementById("sound_example"); 
if (!playThis.paused) { 
    playThis.pause(); 
    playThis.currentTime = 0.0; 
} 
tmpAudio.play(); 

顯然,你需要提供自己的WAVOGG,或MP3自己試用。檢查它是否暫停,如果條件滿足,它將在重新播放之前復位。

如果你想跳過音頻標籤完全可以用這個去:

var sound_example = new Audio("sample3.mp3"); 
sound_example.play(); 

有一些輕微的利弊,這兩種方法,但如果你的需求是直線前進那麼兩者都應該足夠。