how to initialize fullscreen without user interaction

前端 未结 2 1381
孤街浪徒
孤街浪徒 2021-01-13 01:49

Hi i\'m beginner and i want to create a web-app and needs help in fullscreen when page is Load... without user interaction

I have something like this at the click fu

相关标签:
2条回答
  • 2021-01-13 02:27

    You try this.

    $(document).ready(function () {
        $('html').click(function () {
            if (screenfull.isFullscreen !== true) {
                screenfull.toggle();
            }
        });
    });
    

    jQuery plugin

    /*!
     * screenfull
     * v3.0.0 - 2015-11-24
     * (c) Sindre Sorhus; MIT License
     */
    !function () {
        "use strict";
        var a = "undefined" != typeof module && module.exports, b = "undefined" != typeof Element && "ALLOW_KEYBOARD_INPUT"in Element, c = function () {
            for (var a, b, c = [["requestFullscreen", "exitFullscreen", "fullscreenElement", "fullscreenEnabled", "fullscreenchange", "fullscreenerror"], ["webkitRequestFullscreen", "webkitExitFullscreen", "webkitFullscreenElement", "webkitFullscreenEnabled", "webkitfullscreenchange", "webkitfullscreenerror"], ["webkitRequestFullScreen", "webkitCancelFullScreen", "webkitCurrentFullScreenElement", "webkitCancelFullScreen", "webkitfullscreenchange", "webkitfullscreenerror"], ["mozRequestFullScreen", "mozCancelFullScreen", "mozFullScreenElement", "mozFullScreenEnabled", "mozfullscreenchange", "mozfullscreenerror"], ["msRequestFullscreen", "msExitFullscreen", "msFullscreenElement", "msFullscreenEnabled", "MSFullscreenChange", "MSFullscreenError"]], d = 0, e = c.length, f = {}; e > d; d++)
                if (a = c[d], a && a[1]in document) {
                    for (d = 0, b = a.length; b > d; d++)
                        f[c[0][d]] = a[d];
                    return f;
                }
            return!1;
        }(), d = {request: function (a) {
                var d = c.requestFullscreen;
                a = a || document.documentElement, /5\.1[\.\d]* Safari/.test(navigator.userAgent) ? a[d]() : a[d](b && Element.ALLOW_KEYBOARD_INPUT);
            }, exit: function () {
                document[c.exitFullscreen]();
            }, toggle: function (a) {
                this.isFullscreen ? this.exit() : this.request(a);
            }, raw: c};
        return c ? (Object.defineProperties(d, {isFullscreen: {get: function () {
                    return Boolean(document[c.fullscreenElement]);
                }}, element: {enumerable: !0, get: function () {
                    return document[c.fullscreenElement]
                }}, enabled: {enumerable: !0, get: function () {
                    return Boolean(document[c.fullscreenEnabled]);
                }}}), void(a ? module.exports = d : window.screenfull = d)) : void(a ? module.exports = !1 : window.screenfull = !1);
    }();
    
    0 讨论(0)
  • That is not possible.

    I ran the following snippet in my browser console:

    var e = document.getElementById('answers');
    (e.webkitRequestFullScreen || e.mozRequestFullScreen).apply(e);
    

    Chrome told me:

    Failed to execute 'requestFullScreen' on 'Element': API can only be initiated by a user gesture.

    Firefox told me:

    Request for full-screen was denied because Element.mozRequestFullScreen() was not called from inside a short running user-generated event handler.

    That is a restriction put in place to prevent abuse, similar to that on window.open (see this or this question for example).

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