有没有人知道Javascript调用什么来获取整个浏览器窗口的宽度/高度(包括导航,菜单等?)
我知道FF,Safari和其他浏览器中有outerWidth
,outerHeight
。
答案 0 :(得分:3)
这也可能会有所帮助,具体取决于您要完成的目标:
window.moveTo(0,0); window.resizeTo(screen.width,screen.height); var navButtonsEtcHeight = screen.height - window.innerHeight; var navButtonsEtcWidth = screen.width - window.innerWidth;
注意:对于“window.innerHeight”支持的独立于浏览器的解决方案,请参阅this link
然后你得到了你正在寻找的答案 - 请注意,非全屏用户的缺点是看到他们的窗口首先在屏幕上反弹。
答案 1 :(得分:2)
这是DreadPirateShawn答案的变体。在IE7和Chrome8上测试过。最初出现在Experts Exchange。
function getWindowSize() {
var wW, wH;
if (window.outerWidth) {
wW = window.outerWidth;
wH = window.outerHeight;
} else {
var cW = document.body.offsetWidth;
var cH = document.body.offsetHeight;
window.resizeTo(500,500);
var barsW = 500 - document.body.offsetWidth;
var barsH = 500 - document.body.offsetHeight;
wW = barsW + cW;
wH = barsH + cH;
window.resizeTo(wW,wH);
}
return { width: wW, height: wH };
}
答案 2 :(得分:1)
我认为不可能。
值得回顾Chapter 14 of O'Reilly's: JavaScript - The Definitive Guide,尤其是第14.3.1节。
答案 3 :(得分:0)
我相信这就是你想要的
document.body.offsetWidth
document.body.offsetHeight
答案 4 :(得分:-1)
我认为你可以使用
width: window.outerWidth
height: window.outerHeight
你可以使用jquery所以它不会在ie中被定义。您可以先尝试找出屏幕尺寸,然后使用浏览器的尺寸计算出精确的尺寸。