iframe在ie9 ie8 ie7 ie6 360 firefox中自适应高度
以下代码是iframe在ie9 ie8 ie7 ie6 360 firefox中自适应高度的。这个问题曾经折腾我很久,现在终于解决了,现在和大家分享一下。
下面红色代码必须。
//ie9则用下面js代码可以让iframe自适应高度
function iframeResize(iframe) {
var idocumentElement = iframe.contentWindow.document.documentElement;
if(navigator.appName == "Microsoft Internet Explorer" && navigator.appVersion .split(";")[1].replace(/[ ]/g,"")=="MSIE9.0")
{
try {
if (idocumentElement.scrollHeight > 560) {
iframe.height -= 5;
iframe.height = idocumentElement.scrollHeight;
}
else {
iframe.height = 560;
}
}
catch (e) {
window.status = 'Error: ' + e.number + '; ' + e.description;
}
}
}
//ie9通过iframeResize(iframe)方法自适应高度,其他浏览器通过height = document.frames(this.name).document.body.scrollHeight。这段话必须写在onload中,否则无效。
<iframe src="<%=basePath%>qt/history!showUiById.action?id=<s:property value="#parameters.id"/>&flag=<s:property value="#parameters.flag"/>" width="770" frameborder="no" border="0" marginwidth="0" marginheight="0" scrolling="no" allowtransparency="yes" name="2" onload='if(navigator.appName == "Microsoft Internet Explorer" && navigator.appVersion .split(";")[1].replace(/[ ]/g,"")=="MSIE9.0"){iframeResize(this);}else{height = document.frames(this.name).document.body.scrollHeight}'></iframe>
作者:wangxiaojing123
补充:web前端 , JavaScript ,