window.open高度在谷歌浏览器不同于其他浏览器
我正在使用javascript的window.open打开用户单击指定宽度和高度(760x581)的浏览器窗口,并且这可以在Internet上正常工作资源管理器,Safari和Firefox,但谷歌浏览器给我的问题。在其他浏览器中,正确使用高度作为内容的高度,但在Google Chrome浏览器中,实际浏览器窗口高度为581像素,而不是内容。有没有办法来解决这个问题?window.open高度在谷歌浏览器不同于其他浏览器
<a href="http://domain.com/example.php" onclick="window.open('http://domain.com/example.php', '', 'width=760, height=581, top=15, left=15, toolbar=0, menubar=0, scrollbars=1, resizable=1, copyhistory=0, location=0, directories=0, status=1, titlebar=1, personalbar=0');return false">click here</a>
所以我搞砸的事情越来越发现,一些浏览器所支持的特性innerHeight
的window.open
和在775px如预期以下工作在与所期望的内容的高度的所有浏览器与50像素仅添加到铬:
window.open($(this).attr('href'), 'videoplayer',
'width=1242, height=775, innerHeight=825, location=no, menubar=no, status=no, titlebar=no, scrollbars=no'
);
我在Chrome 6.0.472.63,火狐3.6,图3和2中试验这一点,IE 8 & 7 ,Opera 10.62。当我仅仅使用height
Chrome浏览器的大小约为50px,并且有滚动条,但上面的所有浏览器都很好。添加的innerHeight
属性设置为比我希望在Chrome以及所有其他浏览器中工作的更高50px。
更新:它看起来像在Safari中创建了一个问题,增加了50px的高度。将研究如何解决这个问题。
最近使用Chrome 14+对此进行了测试,看起来这不再是问题。 – donut 2011-10-19 23:14:22
那么从我已经能够在一个小时的谷歌搜索的后找的是,这是谷歌Chrome现在是怎么做的,我们必须只使用一种变通方法。我在做什么,现在,除非有更好的发现只是将下面的JS,我打开网页:
if (navigator.appVersion.indexOf('Chrome')>0) {
window.resizeBy(0, 581 - window.innerHeight);
}
感谢您的解决方案。看起来,至少在Mac上,Chrome会将高度增加50px。不知道,如果它在其他平台上有什么不同。当其他浏览器正常运行时真的很烦人。让我想知道这是否只是一个错误,或者在Chrome中使用'window.open'时是否有其他选项可以设置。 – donut 2010-10-14 16:29:38
问题仍然存在(Chrome17 +),如果您使用height = 600调用window.open,则结果窗口innerheight为564px,这是36px短(用于Windows上的标题栏)。标题栏高度依赖于平台,所以这非常烦人。
我的解决方案只是增加了高度的差异。
作为一个便笺,'点击此处'几乎不是一个好的链接文本。 ;) – 2010-08-11 20:21:04
哈哈很明显,只是一个例子;-) – 2010-08-11 20:22:21