我想让我的浏览器全屏显示,就像使用F11按键事件一样。我找到了一些例子,例如
function maxwin() {
var wscript = new ActiveXObject("WScript.Shell");
if (wscript!=null) {
wscript.SendKeys("{F11}");
}
}
这种方法在Mozilla或其他最新的浏览器上不起作用。请让我知道是否有任何解决此问题的方法。
谢谢。(提前致谢。)
我想让我的浏览器全屏显示,就像使用F11按键事件一样。我找到了一些例子,例如
function maxwin() {
var wscript = new ActiveXObject("WScript.Shell");
if (wscript!=null) {
wscript.SendKeys("{F11}");
}
}
这种方法在Mozilla或其他最新的浏览器上不起作用。请让我知道是否有任何解决此问题的方法。
谢谢。(提前致谢。)
最新版本的Chrome、Firefox和IE(11)现在支持此功能。
根据Zuul在这个主题中的指示,我编辑了他的代码以包括IE11并提供在页面上全屏任何选择的元素的选项。
JS:
function toggleFullScreen(elem) {
// ## The below if statement seems to work better ## if ((document.fullScreenElement && document.fullScreenElement !== null) || (document.msfullscreenElement && document.msfullscreenElement !== null) || (!document.mozFullScreen && !document.webkitIsFullScreen)) {
if ((document.fullScreenElement !== undefined && document.fullScreenElement === null) || (document.msFullscreenElement !== undefined && document.msFullscreenElement === null) || (document.mozFullScreen !== undefined && !document.mozFullScreen) || (document.webkitIsFullScreen !== undefined && !document.webkitIsFullScreen)) {
if (elem.requestFullScreen) {
elem.requestFullScreen();
} else if (elem.mozRequestFullScreen) {
elem.mozRequestFullScreen();
} else if (elem.webkitRequestFullScreen) {
elem.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT);
} else if (elem.msRequestFullscreen) {
elem.msRequestFullscreen();
}
} else {
if (document.cancelFullScreen) {
document.cancelFullScreen();
} else if (document.mozCancelFullScreen) {
document.mozCancelFullScreen();
} else if (document.webkitCancelFullScreen) {
document.webkitCancelFullScreen();
} else if (document.msExitFullscreen) {
document.msExitFullscreen();
}
}
}
HTML:
<input type="button" value="click to toggle fullscreen" onclick="toggleFullScreen(document.body)">
其中,“document.body”是任何您希望的元素。
还要注意,尝试从控制台运行这些全屏命令在Chrome或IE上似乎不起作用。但我在Firefox中使用Firebug取得了成功。
还有一件事需要注意的是,这些“全屏”命令没有垂直滚动条,您需要在CSS中指定它:
*:fullscreen
*:-ms-fullscreen,
*:-webkit-full-screen,
*:-moz-full-screen {
overflow: auto !important;
}
"!important" 似乎对于IE的渲染是必要的
使用此代码而不是原来的代码
var el = document.documentElement
, rfs = // for newer Webkit and Firefox
el.requestFullScreen
|| el.webkitRequestFullScreen
|| el.mozRequestFullScreen
|| el.msRequestFullScreen
;
if(typeof rfs!="undefined" && rfs){
rfs.call(el);
} else if(typeof window.ActiveXObject!="undefined"){
// for Internet Explorer
var wscript = new ActiveXObject("WScript.Shell");
if (wscript!=null) {
wscript.SendKeys("{F11}");
}
}
来源:如何在JavaScript中创建全屏窗口(覆盖整个屏幕)
已在Chrome、Firefox 10及以上版本、IE 8及以上版本、Safari 5中测试并可用。
requestFullScreen
中的大写字母S
已经被弃用(但可能仍在Firefox中使用),应该改为小写s
,即requestFullscreen
。我花了一些时间才弄清楚这个问题。 - TrySpace如果没有原生代码或浏览器扩展程序是不可能的。ActiveXObject仅存在于IE浏览器中。
现在的时代,至少在 Safari 5 和 Chrome 16 的 WebKit 浏览器中,可以通过以下方式实现:
webkitEnterFullscreen()
Firefox 10也可以使用。点击此链接进行检查
不知道IE在这个主题中在做什么。
requestFullScreen
中的大写字母S
已经被弃用(但可能仍在Firefox中存在),应该改为小写s
,即requestFullscreen
。我花了一些时间才弄清楚这个问题。 - TrySpace