嗨,这是我在一个div上使用的代码,以便自动将其高度设置为第一个窗口。该脚本在Firefox中运行良好,但在Chrome或Safari中无效。我尝试了几种方法来修复它,包括一些来自以前的海报,但没有效果,不幸的是。我认为问题隐藏在document.getElementById("ID").style.height
的某个地方,但我不完全确定。如果有人能提供帮助我会很高兴的。提前致谢! :)
window.onload = Resize;
window.onresize = Resize;
function Resize() {
if (document.documentElement.scrollHeight === document.documentElement.clientHeight)
{
document.getElementById("ID").style.height = (window.innerHeight-220) + "px";
}
};
答案 0 :(得分:1)
尝试this
function getHeight() {
var myHeight = 0;
if (typeof(window.innerHeight) == 'number') {
//Non-IE
myHeight = window.innerHeight;
} else if (document.documentElement && document.documentElement.clientHeight) {
//IE 6+ in 'standards compliant mode'
myHeight = document.documentElement.clientHeight;
} else if (document.body && document.body.clientHeight) {
//IE 4 compatible
myHeight = document.body.clientHeight;
}
return myHeight;
}
function getScrollY() {
var scrOfY = 0;
if (typeof(window.pageYOffset) == 'number') {
//Netscape compliant
scrOfY = window.pageYOffset;
} else if (document.body && document.body.scrollTop) {
//DOM compliant
scrOfY = document.body.scrollTop;
} else if (document.documentElement && document.documentElement.scrollTop) {
//IE6 standards compliant mode
scrOfY = document.documentElement.scrollTop;
}
return scrOfY;
}
function Resize() {
document.getElementById("ID").style.height = Math.round(getHeight() + getScrollY()) + "px";
}
window.onload = Resize();
window.onresize = Resize();
这会将ID的高度设置为浏览器窗口的高度+垂直滚动偏移量。