Internet Explorer innerHeight

时间:2011-05-03 02:27:07

标签: javascript internet-explorer

如何在Internet Explorer中获取window.innerHeight。感谢。

5 个答案:

答案 0 :(得分:7)

window.getWinSize= function(){
    if(window.innerWidth!= undefined){
        return [window.innerWidth, window.innerHeight];
    }
    else{
        var B= document.body, 
        D= document.documentElement;
        return [Math.max(D.clientWidth, B.clientWidth),
        Math.max(D.clientHeight, B.clientHeight)];
    }
}

答案 1 :(得分:2)

一个简单的单行解决方案:

var WinHeight = window.innerHeight || Math.max(document.documentElement.clientHeight, document.body.clientHeight);

答案 2 :(得分:1)

这适用于IE9:

document.body.clientHeight

答案 3 :(得分:0)

使用jQuery最简单的方法。 Here's有关它的一些详细信息。

答案 4 :(得分:0)

在ie9中, window.innerHeight document.body.clientHeight 仅在内容高于文档窗口时有效。

可靠的解决方案是使用vw and vh css属性。

css(简单)方式:

/* foce the content to be at 100% with css */
html, body {
    width: 100vw;
    height: 100vh;
}

js方式:

// make a fitted htmlelement and returns its size.
var get_ie_size=function(){
    var domtest = document.createElement('div');
    domtest.style.display="block";
    domtest.style.width="100vw";
    domtest.style.height="100vh";
    document.body.appendChild(domtest);
    var size = [domtest.offsetWidth,domtest.offsetHeight];
    document.body.removeChild(domtest);
    return size;
};