readyState issue with HTML5 video elements on ios safari

后端 未结 1 1178
夕颜
夕颜 2020-12-15 14:06

It seems on the iPad (iOS v. 5.1.1), Safari does not keep a video element\'s readyState value according to specification. Even while loading from the video sou

相关标签:
1条回答
  • 2020-12-15 14:36

    From the Apple developer documentation:

    Note: The preload attribute is supported in Safari 5.0 and later. Safari on iOS never preloads.

    According to Apple the desired behavior on a mobile device is that loading only starts after you actively request the resource so as to not waste bandwidth or battery.

    Regarding your question this means that Apple is adhering to the spec. Since no preload occurs and loading only starts after you click the play button the readyState is zero before that point in time.

    However, the video tag has special events which are supposed to give more information than readyState.

    • onCanplay
    • onCanplaythrough
    • onProgress

    Again, quoting the Apple developer library (Using DOM Events to monitor load progress)

    Note: On the iPad, Safari does not begin downloading until the user clicks the poster or placeholder. Currently, downloads begun in this manner do not emit progress events.

    0 讨论(0)
提交回复
热议问题