打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
document的几种高度及iframe自适应常用方法
四种浏览器对 document.body 的 clientHeight、offsetHeight 和 scrollHeight 的解释。

这四种浏览器分别为IE(Internet Explorer)、NS(Netscape)、Opera、FF(FireFox)。

clientHeight
大家对 clientHeight 都没有什么异议,都认为是内容可视区域的高度(在后台调整iframe的大小时,通常不用这个,而是用scrollHeight ,即整个网页内容的高度),也就是说页面浏览器中可以看到内容的这个区域的高度,一般是最后一个工具条以下到状态栏以上的这个区域,与页面内容无关。

offsetHeight
IE、Opera 认为 offsetHeight = clientHeight + 滚动条 + 边框。
NS、FF 认为 offsetHeight 是网页内容实际高度,可以小于 clientHeight。

scrollHeight(自适应时候经常用到
IE、Opera 认为 scrollHeight 是网页内容实际高度,可以小于 clientHeight。
NS、FF 认为 scrollHeight 是网页内容高度,不过最小值是 clientHeight。

简单地说
clientHeight 就是透过浏览器看内容的这个区域高度。
NS、FF 认为 offsetHeight 和 scrollHeight 都是网页内容高度,只不过当网页内容高度小于等于 clientHeight 时,scrollHeight 的值是 clientHeight,而 offsetHeight 可以小于 clientHeight。
IE、Opera 认为 offsetHeight 是可视区域 clientHeight 滚动条加边框。scrollHeight 则是网页内容实际高度。

同理
clientWidth、offsetWidth 和 scrollWidth 的解释与上面相同,只是把高度换成宽度即可。

iframe常用的高度调整的方法:


一:自己曾经写的iframe自适应方法:


function setHeightByAjax(){
    var h=top.mainIframe.document.getElementById("mainInfos");//某一个div的高度
var height=h.offsetHeight;
top.setIframeHeight(height+40);
}


二:常用的方法:

function seth(){
       var thisheight =document.documentElement.scrollHeight;//为了兼容ie
var main = $(window.parent.document).find("#mainIframe");
main.height(thisheight-30);


}

三:一般在父页面写下这个函数,只需在子页面调用即可:

function setIframeHeight(h){
var mw=$("#mainIframe").width();
$("#mainIframe").height(h);
$("#mainIframe").width(mw);
}
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
javascript知识点收藏
scrollLeft,scrollTop等等详解
scrollLeft,scrollTop,滚动代码的总结 盒子模式
再谈iframe自适应高度
搞清楚scrollHeight,scrollLeft,scrollTop,scrollWidth提升页面兼容浏览器
Js位置与大小(1)
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服