2012-03-21 171 views
0

正在写一些类似于钢琴的脚本,这意味着当你点击/触摸/点击按钮时,它应该立即播放声音。html5音频:单击时在ipad上播放“立即”声音?

但问题是,它似乎需要时间(相对较多)来播放每个声音一次点击。

,因为它看起来更像是流这需要时间来加载:/

是否有任何其他的方法,我可以用它来实现这一目标?

谢谢:d,(*,用于至少阅读)

回答

1

执行此操作后DOMContentLoaded

yourAudioElement.play(); 
setTimeout(function(){ 
yourAudioElement.pause(); 
},1); 

这将迫使iOS的浏览器缓存资源

+0

禁用预加载的目的是为了节省人们每月有限的带宽消耗。我们不需要绕过这些人,所以他们可以在我们阅读网页时悄悄预载大量文件。所以-1。 – 2012-03-21 19:23:14

+0

有两种选择。 **预加载并毫不拖延地播放**或**不预载并等待加载**。你不能拥有两个。如果你想媒体播放没有滞后,你必须加载它。我不明白你的评论。 – Mohsen 2012-03-21 22:13:24

+0

我的评论对于我们这些拥有500MB(左右)数据计划的人而言,像您这样的人提供了预先加载视频/音频的解决方案。为什么我会希望人们在我的手机上预先加载内容,这很愚蠢。 – 2012-03-21 23:39:25

3

iOS装置预加载<audio><video>被禁止以节省带宽。

在Safari iOS上(对于所有设备,包括ipad公司),其中用户可以 是蜂窝网络上,并且每数据单元,预紧和 自动播放被充电被禁用。直到用户启动它才会加载数据。

来源:Safari Developer Library

+0

我知道,(已被很多的谷歌搜索)这就是为什么即时通讯寻找某种黑客以另一种方式播放声音。无论如何,再次感谢信息:D – cjmling 2012-03-22 01:52:21