这似乎在iPad(iOS版诉5.1.1),Safari不保持视频元素的readyState
值按规范。 即使在从视频源加载readyState
等于零。
我做了一个示范的jsfiddle它不断地检查视频的readyState
。 一个有趣的观察: readyState
只是点击播放按钮后改变。
其实,我预计readyState
切换到较高数量的加载过程中(因为它是我测试过的桌面上的所有浏览器的情况下-包括Safari)是否有解决方法吗? 我会得到什么不对吗?
这似乎在iPad(iOS版诉5.1.1),Safari不保持视频元素的readyState
值按规范。 即使在从视频源加载readyState
等于零。
我做了一个示范的jsfiddle它不断地检查视频的readyState
。 一个有趣的观察: readyState
只是点击播放按钮后改变。
其实,我预计readyState
切换到较高数量的加载过程中(因为它是我测试过的桌面上的所有浏览器的情况下-包括Safari)是否有解决方法吗? 我会得到什么不对吗?
从苹果开发者文档 :
注:装载属性,是在Safari 5.0和更高版本支持。 Safari浏览器在iOS上从来没有预装。
据苹果公司在移动设备上所期望的行为是,仅加载启动后你主动请求的资源,以便不浪费带宽或电池。
关于你的问题,这意味着苹果秉承规范。 由于没有预载时,你点击播放按钮后只加载启动readyState
在那个时间点之前是零。
然而, video
标签有哪些应该给予比更多信息,特殊事件readyState
。
onCanplay
onCanplaythrough
onProgress
同样,引用了苹果开发者库(使用DOM事件来监视加载进度)
注意:在iPad上,Safari不开始下载,直到用户点击海报或占位符。 目前,以这种方式开始下载不发出进度事件。