在IE中获取整个浏览器的宽度/高度?

时间:2009-06-25 17:01:22

标签: javascript internet-explorer

有没有人知道Javascript调用什么来获取整个浏览器窗口的宽度/高度(包括导航,菜单等?)

我知道FF,Safari和其他浏览器中有outerWidthouterHeight

5 个答案:

答案 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中被定义。您可以先尝试找出屏幕尺寸,然后使用浏览器的尺寸计算出精确的尺寸。

DOC: http://docs.jquery.com/Plugins/dimensions/outerHeight