繁体   English   中英

在全屏模式Internet Explorer中检测事件更改

[英]Detecting Event change in fullscreen mode Internet explorer

我正在尝试编写一个事件处理程序,用于检测我所拥有的视频播放器是处于全屏还是“常规”模式。

我试过用

 document.addEventListener("fullscreenchange", myfunc, false);

但这在IE中不起作用,我使用webkitfullscreenchange和mozfullscreenchange事件为firefox和chrome实现了同样的功能。 我可以在IE中使用其他任何事件吗? 或者另一种方式呢?

任何帮助,将不胜感激。 谢谢!

你有jQuery,所以使用它:

var screen_change_events = "webkitfullscreenchange mozfullscreenchange fullscreenchange MSFullscreenChange";
$(document).on(screen_change_events, function () {

});

(无论如何,IE 9之前的版本不支持addEventListener

同时,在任何版本的IE中都不支持全屏:

MDN参考:

这是一个可能的黑客围绕它:

有一个名为jquery-fullscreen的jQuery插件可以完全按照你的需要进行操作。 在Fullscreen-API标准结晶之前,这可能是最好的选择。

您也可以使用Modernizr fullscreen-api检查并在浏览器不支持的情况下通过自己触发事件来填充它(请参阅此问题以获取检测方法)

下载此脚本: https//raw.githubusercontent.com/sindresorhus/screenfull.js/gh-pages/dist/screenfull.js

使用此代码:

if (screenfull.enabled) {
    screenfull.onchange(() => {
        icono_full(screenfull.isFullscreen);
    });
}


function icono_full(x) {
    if (x == true) {
        //do when full screen is on
    } else {
        //not full screen
    }
}

请参阅: https//github.com/sindresorhus/screenfull.js

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM