2010-04-05 201 views
8

我正在嘗試製作一個HTML5 Web應用程序,它只需在我的iPhone上播放一遍又一遍的聲音。我不知道任何Obj-C在本地執行它。在iPhone上循環播放HTML5音頻

我有什麼工作正常,但聲音只能播放一次:

<!DOCTYPE html> 
<html> 
    <head> 
     <title>noisemaker!</title> 
     <meta http-equiv="content-type" content="text/html; charset=utf-8" /> 
     <meta name="viewport" content="maximum-scale=1, minimum-scale=1, width=device-width, user-scalable=no" /> 
     <meta name="apple-mobile-web-app-capable" content="yes" /> 
    </head> 
    <body> 
     <audio src="noise.mp3" autoplay controls loop></audio> 
    </body> 
</html> 

有沒有辦法要麼繞過QuickTime音頻屏幕,循環播放的網頁,或得到的QuickTime音頻屏幕循環聲音?

回答

11

我發現「循環」屬性在iPhone(iOS 4.0)上的HTML5音頻元素的最新實現中似乎沒有完全起作用。我發現這是一種解決方法:

<audio src="noise.mp3" onended="this.play();" controls="controls" autobuffer></audio> 

我發現,你在上面放「循環」,或「onended」事件似乎不觸發(即「循環」部分實現)。

請注意,「自動播放」在iPhone上被故意禁用。

看來「音量」屬性目前還沒有完全實現。

請注意,iOS 4音頻播放時沒有全屏幕QT播放器。

+0

+1這工作得非常好。謝謝! – FCTW 2011-12-15 19:18:21

0

您可以用老式的嵌入標籤來做到這一點,但我不知道Mobile Safari是否會遵守其循環屬性。

+0

Mobile Safari似乎不遵循循環屬性。 – ZeroUptime 2010-04-05 21:05:57

1

您是否嘗試過使用鍵/值對的屬性。我知道你應該能夠指定attr,但只是扮演魔鬼的擁護者。 嘗試:

<audio src="noise.mp3" autoplay="autoplay" controls="controls" loop="loop"></audio> 
+0

我有同樣的問題,使用loop =「loop」的鍵值對不適合我。 – 2010-11-19 06:04:41

1

什麼:

<audio src="noise.mp3" autoplay="" controls="" onended="this.play()"></audio> 
1

iPhone OS 3.0不完全支持<音頻>標籤 - 所有它會用它做是在QuickTime的風格,充分發揮它。

-1

不允許播放像視頻或聲音的媒體(到目前爲止)。如果您想播放視頻或音頻,iPhone將在外部(默認)播放器中打開它。 當玩家打開時,您無法控制網頁,直到用戶關閉外接播放器或視頻/聲音自行停止。