Detect if client allows inline media playback for HTML5 video

后端 未结 4 1883
感情败类
感情败类 2020-12-28 16:43

Is there a good way to detect if a client browser allows inline media playback for HTML5 video?

Update

I am not trying to s

4条回答
  •  灰色年华
    2020-12-28 16:55

    Whereas the document iOS-Specific Considerations says:

    Currently, Safari optimizes video presentation for the smaller screen on iPhone or iPod touch by playing video using the full screen—video controls appear when the screen is touched, and the video is scaled to fit the screen in portrait or landscape mode. Video is not presented within the webpage. The height and width attributes affect only the space allotted on the webpage, and the controls attribute is ignored. This is true only for Safari on devices with small screens. On Mac OS X, Windows, and iPad, Safari plays video inline, embedded in the webpage.

    iOS

    var videoIsFullscreen = screen.width < 320 &&
                            navigator.userAgent.indexOf("Safari") > -1 &&
                            navigator.userAgent.indexOf("Chrome") == -1 &&
                            navigator.userAgent.match(/(iPhone|iPod)/);
    

    Note that im not sure if small screen is of 320px, you should adjust this value.

    EDIT

    Take a look at this post.

    Summarizing:

    var isSmallScreen = screen.width <= 320;
    /// the shadows here
    var isWideScreen = screen.width >= 568;
    

    After all, I found this post that may help you much

    Can I avoid the native fullscreen video player with HTML5 on iPhone or android?

    ANDROID

    How to play inline html5 video in Android Browser

    Note that is for native Android Browser not for Android Chrome.

提交回复
热议问题