1

在我的网页中,我有以下在正文中称为 onLoad 的 javascript 函数:

function changeDivWidth()
{   
    d = document.getElementById('background');   
    document.getElementById("backgroundImg").style.height = window.innerHeight+"px";
    imgWidth = document.getElementById("backgroundImg").width;
    marginLeft = ($(window).width() - imgWidth)/2;   
    d.style.width = imgWidth+"px";
    d.style.left = marginLeft+"px";
    document.getElementById("backgroundImg").style.visibility="visible";
    document.getElementById("menu").style.visibility="visible";
}

该脚本基本上采用浏览器页面的高度并将其设置为元素的高度。除了没有加载脚本的 IE7 和 IE8 之外,这在所有浏览器中都可以正常工作。你能建议我一个解决方案吗?

谢谢

4

1 回答 1

2

window.innerHeight在 IE8 及以下版本中不起作用。试用document.body.clientHeight

编辑:等一下……你在第 6 行使用 jQuery 吗?:

marginLeft = ($(window).width() - imgWidth)/2;

如果是,请$(window).height()改为使用获取高度。

于 2013-03-06T19:25:28.443 回答