在iPad (iOS v.5.1.1)上,Safari似乎没有按照规范保留视频元素的readyState
值。即使从视频源加载,readyState
也等于零。
我做了一个readyState
。有趣的是:readyState
只在单击play按钮后才会改变。
实际上,我曾期望readyState
在加载过程中切换到更高的数量(就像我测试过的桌面上的所有浏览器一样--包括Safari)。有解决办法吗?我在这出什么事了吗?
发布于 2012-07-28 11:02:13
注意: Safari 5.0及更高版本支持preload属性。iOS上的Safari从不预装。
根据Apple的说法,移动设备上的期望行为是,只有在主动请求资源之后才开始加载,这样才不会浪费带宽或电池。
关于你的问题,这意味着苹果正在遵守规范。由于没有预加载,并且只在单击play按钮之后才开始加载,所以readyState
在那个时间点之前为零。
然而,video
标记有特殊的事件,应该比readyState
提供更多的信息。
onCanplay
onCanplaythrough
onProgress
再次引用Apple developer库(使用DOM事件监视加载进度)的话
注意:在iPad上,Safari直到用户单击海报或占位符后才开始下载。目前,以这种方式开始的下载不会发出进度事件。
https://stackoverflow.com/questions/11633929
复制相似问题