2010-12-01 110 views
1

我正在创建一个简单的弹出窗口,窗口高度不会调整为30像素。它总是默认为100像素。此行为出现在所有浏览器中。我错过了什么吗?Javascript弹出窗口(最小)高度

var myWindow; 

function openWindow(url) 
{ 
    var windowFeatures = "width=530,height=30,status,resizable=no,scrollbars=0"; 
    myWindow = window.open(url, "welcome", windowFeatures); 
} 

这里是我的链接

<a href='javascript:void(0)' onclick=openWindow('http://www.stackoverflow.com')> Open the window </a> 

回答

6

不,这只是它的工作方式。您传递给window.open的“功能”仅仅是请求,浏览器可以自由地忽略任何或全部。大多数浏览器和/或底层操作系统本身都会为窗口强加一个最小宽度和高度 - 您无法通过JavaScript对其进行更改。

+0

所以我想我只需要接受我需要建立在100px最低高度的窗口呃?哎哟。该设计需要10个窗口在另一个之上。每个窗口高度为30px。所以现在我看起来会遇到屏幕分辨率和可视区域的问题,因为窗口现在会超过1000像素的总高度。 – Preston 2010-12-01 19:32:01

+0

@Preston:10个窗口相当多 - 我不认为用户会喜欢那个。现在是时候重新考虑你的设计了吗? – casablanca 2010-12-01 19:34:57

5

大多数浏览器将最小窗口大小设置为100px左右,因此恶意用户不会制作小窗口,从而无法做出糟糕的事情。即使是一个尺寸足够小的善意窗口,用户也很难找到并关闭。

也许lightBox或simpleModal类型的解决方案会有帮助吗?您可以更好地控制显示区域的大小。

1

好了之后,有点修补我忘了使用resizeTo()方法。不敢相信我以前没有想到这一点。 (浪费2个小时)