【发布时间】:2013-08-13 09:29:52
【问题描述】:
我正在研究并使用带有 FireFox 的 html5 全屏 API,我有一个名为“SamplePlayer.html”的本地 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 进行全屏模式?
【问题讨论】:
标签: html firefox fullscreen