到目前为止,我一直在开发的功能已经在Chrome中运行,并使用后备功能,IE8。
我不明白的是:Safari只是不会开始加载<video>
或<audio>
内容。
Safari 6将无法加载,iOS 5的Safari也不会加载:
我的代码在适当的时间(至少对Chrome)调用元素.load()
,那么是什么给出了?
以下是视频声明:
<video width="800" height="600" class="faces" id="facesVideo">
<source src="video/grid.mp4" type="video/mp4" />
<source src="video/grid.ogv" type="video/ogg" />
</video>
音频是动态声明的,但也有同样的问题。
在致电.load()
之前,我是否需要等待Chrome不需要的DOM事件?
在元素可以触发canplaythrough
之前让Safari开始缓冲需要什么?
答案 0 :(得分:0)
由于Safari不支持.load()
,因此必须将preload="auto"
添加到希望Safari在播放前缓冲的任何HTML5媒体元素中。去图。
即。该元素应如下所示:
<video width="800" height="600" class="faces" id="facesVideo" preload="auto">
<source src="video/grid.mp4" type="video/mp4" />
<source src="video/grid.ogv" type="video/ogg" />
</video>