0

我需要一直在页面底部有一个底部bg,所以我决定获取窗口高度和主要内容高度并计算底部是否应该向下推。问题是内容块太短,电脑屏幕大得多,所以底部bg正好在内容的末尾,直到底部屏幕结束后什么都没有。希望这是有道理的)我决定在内容内部添加一些高度以使其更长,以便它填充底部空间并且非常底部的间隙消失。

这是我用来修复它的 JavaScript:

window.onload=function(){
    var winHeight = window.innerHeight;
    var fixIt = winHeight - 200;
    var divHeight = document.getElementById('bottomDiv').clientHeight;
    alert(winHeight - divHeight);
    if (divHeight < winHeight) {
        var fire = document.getElementById('innerDiv').style.height = fixIt + "px";
    }
};

问题:这个脚本工作正常,在所有浏览器中都能很好地工作,但不是 IE7-IE8。能否请您帮助获得旧 IE 浏览器的解决方案?

谢谢,艺术

4

2 回答 2

3
window.onload=function(){
    //                                 v---------------------------------------v
    var winHeight = window.innerHeight || document.documentElement.clientHeight;
    var fixIt = winHeight - 200;
    var divHeight = document.getElementById('bottomDiv').clientHeight;
    alert(winHeight - divHeight);
    if (divHeight < winHeight) {
        var fire = document.getElementById('innerDiv').style.height = fixIt + "px";
    }
};
于 2013-08-01T18:47:18.440 回答
1

也许相反,您可以将“底部”背景应用于 html 元素,然后在上部区域用不同的背景(可能在您的 div#content 中)覆盖它。

否则,IE8 似乎不支持 innerHeight 。

window.innerHeight ie8 替代方案

尝试

var winHeight = document.documentElement.clientHeight
于 2013-08-01T18:50:42.713 回答