2013-08-01 146 views
0

我需要在页面底部始终有一个底部bg,所以我想出了一个决定,以获取窗口高度和主要内容高度,并计算底部是否应该按下。当内容块太短而电脑屏幕更大时,问题就出现了,所以底部的bg正好在内容的末尾,在底部屏幕的末尾没有任何东西。希望它是有道理的)我决定在内容中添加一些高度以使其更长,以便填充底部空间并消除最底部的差距。IE8 JavaScript问题

这里是我用来解决它的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浏览器的解决方案?

感谢, 艺术

+2

[window.innerHeight IE8替代(http://stackoverflow.com/questions/10173236/window-innerheight-ie8-alternative) –

+0

你为什么不能在CSS中做? –

回答

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"; 
    } 
}; 
+0

非常感谢。工作得很好。全部修好! – Art

+0

将它标记为答案,如果这是一个:) – Samer

1

也许不是你就能把自己的“底”背景的HTML元素,然后在上部区域不同的背景(可能在你的DIV#内容)掩盖事实。

否则,IE8不支持innerHeight。

window.innerHeight ie8 alternative

尝试

var winHeight = document.documentElement.clientHeight 
+0

Oop,我错过了。你是对的。 – Jackson