总结iframe高度自适应,自适应子页面高度
2016-05-19 18:35
661 查看
在网上找了很多iframe的高度自适应,发现很多兼容性都不是很好,于是自己总结了一下。
页面html节点上要有
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
源引:http://www.cnblogs.com/slyzly/articles/2422737.html
页面html节点上要有
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<iframe id="mainFrame" name="mainFrame" scrolling="no" src="Index.aspx" frameborder="0" style="padding: 0px; width: 100%; height: 1000px;"></iframe>
调用 <script type="text/javascript"> startInit('mainFrame', 560); </script>
var browserVersion = window.navigator.userAgent.toUpperCase(); var isOpera = false, isFireFox = false, isChrome = false, isSafari = false, isIE = false; function reinitIframe(iframeId, minHeight) { try { var iframe = document.getElementById(iframeId); var bHeight = 0; if (isChrome == false && isSafari == false) bHeight = iframe.contentWindow.document.body.scrollHeight; var dHeight = 0; if (isFireFox == true) dHeight = iframe.contentWindow.document.documentElement.offsetHeight + 2; else if (isIE == false && isOpera == false) dHeight = iframe.contentWindow.document.documentElement.scrollHeight; else if (isIE == true && ! -[1, ] == false) { } //ie9+ else bHeight += 3; var height = Math.max(bHeight, dHeight); if (height < minHeight) height = minHeight; iframe.style.height = height + "px"; } catch (ex) { } } function startInit(iframeId, minHeight) { isOpera = browserVersion.indexOf("OPERA") > -1 ? true : false; isFireFox = browserVersion.indexOf("FIREFOX") > -1 ? true : false; isChrome = browserVersion.indexOf("CHROME") > -1 ? true : false; isSafari = browserVersion.indexOf("SAFARI") > -1 ? true : false; if (!!window.ActiveXObject || "ActiveXObject" in window) isIE = true; window.setInterval("reinitIframe('" + iframeId + "'," + minHeight + ")", 100); }
源引:http://www.cnblogs.com/slyzly/articles/2422737.html
相关文章推荐
- [架构设计]第四讲:架构角度看代码
- iOS开发------常用正则表达式语法以及常用正则
- SSIS Design7:数据类型的选择
- Python函数常用方法
- Polycom被收购,视频会议市场好玩了
- A Brief Overview Of Vulkan API
- uva 725 Division
- Linux系统调用--getrlimit()与setrlimit()函数详解
- 内容协商
- 从头学android_创建xml文件
- Linux入门:文件权限、用户、用户组(比较清楚)
- struts中select标签的使用
- Docker Compose的工作原理
- 使用 jsonrpc-for-java 所出現的問題
- 8 reasons why SPIR-V makes a big difference
- CentOS下Mycat+MySQL水平分割负载均衡配置记录
- https小结
- 怎么理解Condition,同步锁
- 小钢的架构思考:什么是架构
- JS操作iframe里的DOM || contentWindow,contentDocument