【问题标题】:Safari won't request video or audio from HTML 5 media elements?Safari 不会从 HTML 5 媒体元素请求视频或音频?
【发布时间】:2012-09-05 16:33:56
【问题描述】:

到目前为止,我一直在开发的内容已在 Chrome 中运行,并且使用后备方案在 IE8 中运行。

我不明白的是:Safari 不会开始加载 <video><audio> 内容。

Safari 6 无法加载,iOS 5 的 Safari 也无法加载:

我的代码在适当的时候在元素上调用.load()(至少对于 Chrome),那么给出了什么?

这是视频声明:

<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 事件?

如何让 Safari 开始缓冲直到元素可以触发 canplaythrough

【问题讨论】:

  • 我应该提到我的 .htaccess 来自 HTML5 Boilerplate,所以这可能不是问题。
  • 哦 blerg,显然 .load() 是“所有主流浏览器都支持的,除了 Safari”:w3schools.com/html5/av_met_load.asp ...那么,现在呢?

标签: html safari html5-video html5-audio


【解决方案1】:

由于 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>

【讨论】:

猜你喜欢
  • 2013-01-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-02-02
  • 1970-01-01
相关资源
最近更新 更多