readyState的问题与iOS上的Safari浏览器的HTML5视频元素(readyState

2019-06-26 11:46发布

这似乎在iPad(iOS版诉5.1.1),Safari不保持视频元素的readyState值按规范。 即使在从视频源加载readyState等于零。

我做了一个示范的jsfiddle它不断地检查视频的readyState 。 一个有趣的观察: readyState只是点击播放按钮后改变。

其实,我预计readyState切换到较高数量的加载过程中(因为它是我测试过的桌面上的所有浏览器的情况下-包括Safari)是否有解决方法吗? 我会得到什么不对吗?

Answer 1:

从苹果开发者文档 :

注:装载属性,是在Safari 5.0和更高版本支持。 Safari浏览器在iOS上从来没有预装。

据苹果公司在移动设备上所期望的行为是,仅加载启动后你主动请求的资源,以便不浪费带宽或电池。

关于你的问题,这意味着苹果秉承规范。 由于没有预载时,你点击播放按钮后只加载启动readyState在那个时间点之前是零。

然而, video标签有哪些应该给予比更多信息,特殊事件readyState

  • onCanplay
  • onCanplaythrough
  • onProgress

同样,引用了苹果开发者库(使用DOM事件来监视加载进度)

注意:在iPad上,Safari不开始下载,直到用户点击海报或占位符。 目前,以这种方式开始下载不发出进度事件。



文章来源: readyState issue with HTML5 video elements on ios safari
标签: ios html5 safari