Javascript firefox滚动高度vs溢出
HTML:Javascript firefox滚动高度vs溢出,javascript,html,css,firefox,Javascript,Html,Css,Firefox,HTML: <div id="relative"> <div id="absolute"></div> </div> #relative { position : relative; width : 200px; height : 200px; overflow : visible; } #absolute { position : absolute; width : 200px; heig
<div id="relative">
<div id="absolute"></div>
</div>
#relative {
position : relative;
width : 200px;
height : 200px;
overflow : visible;
}
#absolute {
position : absolute;
width : 200px;
height : 300px;
background : #eee;
}
console.log($("#relative").get(0).scrollHeight);
$("#relative").css({
"overflow-x" : "hidden",
"overflow-y" : "scroll"
});
console.log($("#relative").get(0).scrollHeight);
JavaScript:
<div id="relative">
<div id="absolute"></div>
</div>
#relative {
position : relative;
width : 200px;
height : 200px;
overflow : visible;
}
#absolute {
position : absolute;
width : 200px;
height : 300px;
background : #eee;
}
console.log($("#relative").get(0).scrollHeight);
$("#relative").css({
"overflow-x" : "hidden",
"overflow-y" : "scroll"
});
console.log($("#relative").get(0).scrollHeight);
它在chrome中返回“300300”,在firefox中返回“200300”
有没有办法在不改变溢出的情况下检测“300”?无滚动条=无滚动高度 当元素的内容不生成垂直滚动条时,其scrollHeight属性等于其clientHeight属性
您想做什么?请详细解释。你们不想只取子元素的高度吗$(“#relative>div”)或仅仅$(“#absolute”)?这只是一个例子。真实网页中存在大量嵌套的相对和绝对元素。检测滚动高度是使自定义滚动条正常工作的唯一方法。滚动高度=0$('#parent>div').each(function(){height=height+$(this.height()});不知道?我不知道“жжааааааааааааа。也许“我笑得很厉害”=)您可以在任意序列中嵌套任意数量的相对块和绝对块。只有scrollHeight可以检测是否有绝对块从根块弹出