2017-07-15 72 views
1

我有一個遊戲,用戶在其中點擊開始按鈕,然後由setInterval程序從數組中隨機選擇一個音頻並播放它。它在任何地方都可以正常工作,但是Safari瀏覽器。 我也嘗試使用ResponsiveVoice API。它們都不起作用。 看起來,下面的代碼:html5音頻在ios safari中不起作用

var audio = new Audio(); 
audio.src = 'blabla'; 

,當用戶點擊啓動:

setInterval(function() { 
    audio.play(); 
}, 2000); 

我怎樣才能解決這個問題?

回答

1

如果你的音頻文件在safari中不能正常工作(不只是使用setInterval js),那麼它可能是文件類型是問題。

目前,flac和ogg音頻類型在Safari中不受支持,但在其他瀏覽器中。與Opus一樣,另一種開源文件類型。

MP3和AAC是最廣泛支持的文件類型,其次是.wav 也廣泛支持使用網絡音頻。

有關更多信息,請參閱caniuse

+0

首先,音頻格式是MP3。其次,音頻文件在Safari中工作,但只有在按鈕點擊後立即調用'play()'時纔有效。看起來問題出在'setInterval' –

+0

非常感謝您的幫助,但不幸的是,我發現無法按照我想要的方式在safari中播放音頻。觸摸或點擊事件是播放音頻的必需條件。 –

+0

@LeonidGordun哦不,這是一個無賴!哦,我們生活和學習,我想(並希望Safari也會改善!) –