我正在研究并使用带有 FireFox 的 html5 全屏 API,我有一个本地 html 文件,名称为“SamplePlayer.html”。如果我启动此文件并单击“完整”按钮以使一个元素进入全屏模式,例如:
function launchFullScreen (element) {
if (typeof(element) == "undefined")
element = document.documentElement;
if (element.requestFullScreen) {
element.requestFullScreen();
}
else if (element.mozRequestFullScreen) {
element.mozRequestFullScreen();
}
else if(element.webkitRequestFullScreen) {
element.webkitRequestFullScreen();
}
return true;
}
FireFox 显示一个对话框(可能是其他内容)“按 ESC 退出全屏,允许全屏,允许,拒绝”,我的问题是,如何检测用户单击“允许”按钮并且此对话框消失?不仅元素进入完整模式并且对话框仍然存在。
我已经测试过:
document.addEventListener('webkitfullscreenchange', adjustElement, false);
document.addEventListener('mozfullscreenchange', adjustElement, false);
document.addEventListener('fullscreenchange', adjustElement, false);
function adjustElement() {
//alert("change");
//var tmp = fullscreenElement();
var tmp = fullscreen();
alert(tmp);
}
function fullscreenElement() {
return document.fullscreenElement ||
document.webkitCurrentFullScreenElement ||
document.mozFullScreenElement ||
null;
}
function fullscreen() {
return document.fullscreen ||
document.webkitIsFullScreen ||
document.mozFullScreen ||
false;
}
但是当用户请求全屏时,无论用户是否点击了“允许”按钮,所有这些功能都返回 true,我如何检测用户是否点击了“允许”按钮并允许使用 FireFox 进行全屏模式?