如何使用Javascript打开最大化窗口
How to open maximized window with Javascript?
我正在使用Javascript的self.open()
在新窗口中打开一个链接,我希望该窗口最大化。我尝试了fullscreen=yes
选项,它确实没有做我想要的。我正在使用以下代码:
self.open(pageLoc,popUpName,'height=1600,width=1800,resizable=yes,scrollbars=yes,toolbar=yes,menubar=yes,location=yes');
如果我也提到fullscreen=yes
,那么窗口会像按 F11 一样打开。但我不希望这样。我想要的是当我双击IE并单击右上角的最大化图标时。
由于我给出的height
和width
值如此之大,因此它接近最大化窗口,但不是实际最大化窗口。(我之所以这样说,是因为 即使现在,如果我单击最大化按钮,它也会进一步扩展一点点)
var params = [
'height='+screen.height,
'width='+screen.width,
'fullscreen=yes' // only works in IE, but here for completeness
].join(',');
// and any other options from
// https://developer.mozilla.org/en/DOM/window.open
var popup = window.open('http://www.google.com', 'popup_window', params);
popup.moveTo(0,0);
除非用户真的想要它,否则请不要打开弹出窗口,否则他们会诅咒你并将您的网站列入黑名单。
编辑:哎呀,正如Joren Van Severen在评论中指出的那样,这可能没有考虑到任务栏和窗口装饰(可能以依赖于浏览器的方式)。要注意。似乎忽略高度和宽度(仅fullscreen=yes
参数)似乎也适用于 Chrome 和 Firefox;原来的"全屏"功能在 Firefox 中因令人讨厌而被禁用,但已被最大化取代。这直接与同一页面上的信息相矛盾 https://developer.mozilla.org/en/DOM/window.open 该页面上的信息说窗口最大化是不可能的。此"功能"可能受支持,也可能不受支持,具体取决于浏览器。
window.open('your_url', 'popup_name','height=' + screen.height + ',width=' + screen.width + ',resizable=yes,scrollbars=yes,toolbar=yes,menubar=yes,location=yes')
目前我能找到的打开最大化窗口的最佳解决方案是(Internet Explorer 11,Chrome 49,Firefox 45):
var popup = window.open("your_url", "popup", "fullscreen");
if (popup.outerWidth < screen.availWidth || popup.outerHeight < screen.availHeight)
{
popup.moveTo(0,0);
popup.resizeTo(screen.availWidth, screen.availHeight);
}
见 https://jsfiddle.net/8xwocrp6/7/
注 1:它在 Edge (13.1058686) 上不起作用。不确定这是一个错误还是设计(我已经填写了一个错误报告,我们将看看他们对此有何评论)。解决方法如下:
if (navigator.userAgent.match(/Edge'/'d+/g))
{
return window.open("your_url", "popup", "width=" + screen.width + ",height=" + screen.height);
}
注2:如果您要打开的窗口位于另一个域上,则moveTo
或resizeTo
将不起作用(访问被拒绝)。
使用 Firefox,那么screen.width
和screen.height
工作正常,但在 IE 和 Chrome 中它们无法正常工作,而是以最小大小打开。
是的,我尝试为height
和width
给出太大的数字,就像10000
,但并不完全是最大化的效果。
查看此 jquery 窗口插件:http://fstoke.me/jquery/window/
// create a window
sampleWnd = $.window({
.....
});
// resize the window by passed w,h parameter
sampleWnd.resize(screen.width, screen.height);
- 如何禁用最大化,最小化和关闭按钮以打开新窗口
- 自动最大化浏览器窗口
- 浏览器窗口最小化/最大化事件
- 引导 3 - 最大化窗口时导航对齐未正确显示
- Mac Chrome 悬停事件在窗口最大化时的行为会有所不同
- ExtJS 3.4 列在窗口最大化时未完全展开
- 图像映射区域无法触发单击事件.afer最大化寡妇或恢复窗口单击事件触发
- 如果用户调整窗口大小/窗口未最大化,是否可以隐藏网页上的图像
- 当我单击最大化窗口时,游戏速度变慢
- 如何使用Javascript打开最大化窗口
- 在 Chrome 中最大化弹出窗口
- 如何通过Javascript删除最小化和最大化窗口属性
- 想要在浏览器窗口最小化或最大化时重置RadGrid高度
- 在FireFox中使用JavaScript最大化弹出窗口
- 禁用弹出窗口中的最大化、关闭按钮
- ExtJS 4.2 -约束窗口在最大化然后恢复后没有正确定位
- 背景/内容下半部分消失时,调整大小/最大化窗口
- 如何使用html/javascript自动最大化chrome窗口
- 使用相同按钮的Javascript最大化/取消最大化窗口
- 子窗口可以'在GNU+Linux的Electron中不能最大化