您的位置:首页 > 其它

iframe高度自适应及多浏览器兼容

2012-09-14 23:32 417 查看
/*
iframe高度自适应,多浏览器兼容。在ie6,7,8,firefox8.0.1,chorme15.0.874.121中均可行

使用方法:
在iframe的src页面body的onload事件中加入自适应高度函数onload="computeHeight2();"即可。
在computeHeight2中iframe的id写死为sonFrame,你在使用时需要对照自己iframe的id进行相应更改

方法原理:
1 记录上次iframe被设置的高度
2 计算iframe.contentWindow.document.body.scrollHeight 和iframe.contentWindow.document.documentElement.scrollHeight 的值
3 取上述两者的最大值
*/

function computeHeight2() {
try {
var iframe = window.parent.document.getElementById("sonFrame"); //sonFrame是主页中iframe的id
iframe.height = 0; //这一行尤为重要

var preHeight = iframe.height;
var bHeight = iframe.contentWindow.document.body.scrollHeight;
var dHeight = iframe.contentWindow.document.documentElement.scrollHeight;
var maxheight = Math.max(bHeight, dHeight);

iframe.height = maxheight;
/*
alert("preHeight:" + preHeight + "\n"
+ "body.scrollHeight:" + bHeight + "\n"
+ ".documentElement.scrollHeight:" + dHeight + "\n"
+ "maxHeight:" + maxheight + "\n"
+ "minheight:" + minheight + "\n"
+ "now height:" + iframe.height
);
*/
}
catch (ex) { }
}


转自: http://blog.csdn.net/wangdonghao137/article/details/7036975
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  iframe 浏览器 firefox ie