深入解析contentWindow, contentDocument


Posted in Javascript onJuly 04, 2013

生活永远是一个大染缸,一块白布下去,黑布出来,一块黑布下去,一块七色布出来。

contentWindow 兼容各个浏览器,可取得子窗口的 window 对象。
contentDocument Firefox 支持,> ie8 的ie支持。可取得子窗口的 document 对象。

在子级iframe设置 父级 iframe ,或 孙级 iframe 高度。

function showIframeH(){
  var parentWin = parent.document.getElementById("test");
  if(!parentWin) return false;
  var sub = parentWin.contentWindow.document.getElementById("test2");
  if(!sub) return false;
  var thirdHeight = sub.contentWindow.document.body.offsetHeight; //第三层 body 对象
  sub.height = thirdHeight; //设置第二层 iframe 的高度
  var secondHeight = x.contentWindow.document.body.offsetHeight; //第二层 body 对象
  x.height = secondHeight; //设置第一层 iframe 的高度
  //alert(secondHeight);
  //alert('body: ' + x.contentDocument.body.offsetHeight + ' div:' + thirdHeight);
}

下面附一个实例,因为2345的推广,很多导航站都将网址直接换成2345的推广页面了,那就是当前域名下获取2345中的宽度,然后通过js设置iframe内容的高度,这样看起来是一个整体,核心内容如下

iframe

<body>
<iframe id="mainFrame" onload="mainFrameLoaded(this)" scrolling="no" src="https://www.2345.com/"></iframe>

js代码

<script>
	function mainFrameLoaded(t) 
	{
		//debugger;
		//alert(t.contentWindow.document.body.offsetHeight);
  t.style.height = t.contentWindow.document.body.offsetHeight + 'px';
	}
</script>

记住js写在前面,iframe在后面,通过onload加载的时候就触发,完美融合。

Javascript 相关文章推荐
Open and Print a Word Document
Jun 15 Javascript
js定时器怎么写?就是在特定时间执行某段程序
Oct 11 Javascript
各种常用的JS函数整理
Oct 25 Javascript
js/jquery获取文本框输入焦点的方法
Mar 04 Javascript
js实现跨域访问的三种方法
Dec 09 Javascript
JavaScript数值千分位格式化的两种简单实现方法
Aug 01 Javascript
JavaScript学习小结之被嫌弃的eval函数和with语句实例详解
Aug 01 Javascript
jQuery实现单击按钮遮罩弹出对话框效果(1)
Feb 20 Javascript
JS实现数组去重及数组内对象去重功能示例
Feb 02 Javascript
jquery多级树形下拉菜单的实例代码
Jul 09 jQuery
小程序wx.getUserProfile接口的具体使用
Jun 02 Javascript
代码解析React中setState同步和异步问题
Jun 03 Javascript
关于Javascript与iframe的那些事儿
Jul 04 #Javascript
如何使用Javascript正则表达式来格式化XML内容
Jul 04 #Javascript
解析Jquery取得iframe中元素的几种方法
Jul 04 #Javascript
jQuery动态设置form表单的enctype值(实现代码)
Jul 04 #Javascript
浅析jQuery中常用的元素查找方法总结
Jul 04 #Javascript
浅析jQuery对select操作小结(遍历option,操作option)
Jul 04 #Javascript
解析jQuery与其它js(Prototype)库兼容共存
Jul 04 #Javascript
You might like
一个用于网络的工具函数库
2006/10/09 PHP
php下用GD生成生成缩略图的两个选择和区别
2007/04/17 PHP
php实现网站插件机制的方法
2009/11/10 PHP
解决PHP4.0 和 PHP5.0类构造函数的兼容问题
2013/08/01 PHP
PHP字符串逆序排列实现方法小结【strrev函数,二分法,循环法,递归法】
2017/01/13 PHP
php中各种定义变量的方法小结
2017/10/18 PHP
Yii2.0建立公共方法简单示例
2019/01/29 PHP
Javascript实现的常用算法(如冒泡、快速、鸽巢、奇偶等)
2014/04/29 Javascript
Javascript实现获取窗口的大小和位置代码分享
2014/12/04 Javascript
jQuery 1.9.1源码分析系列(十)事件系统之主动触发事件和模拟冒泡处理
2015/11/24 Javascript
javascript检测移动设备横竖屏
2016/05/21 Javascript
微信小程序购物商城系统开发系列-工具篇的介绍
2016/11/21 Javascript
原生javascript实现分页效果
2017/04/21 Javascript
vue2.0结合Element实现select动态控制input禁用实例
2017/05/12 Javascript
JavaScript 值类型和引用类型的初次研究(推荐)
2017/07/19 Javascript
9种改善AngularJS性能的方法
2017/11/28 Javascript
vue移动端微信授权登录插件封装的实例
2018/08/28 Javascript
小程序显示弹窗时禁止下层的内容滚动实现方法
2019/03/20 Javascript
python使用7z解压软件备份文件脚本分享
2014/02/21 Python
Python 模拟购物车的实例讲解
2017/09/11 Python
python生成不重复随机数和对list乱序的解决方法
2018/04/09 Python
selenium跳过webdriver检测并模拟登录淘宝
2019/06/12 Python
django框架事务处理小结【ORM 事务及raw sql,customize sql 事务处理】
2019/06/27 Python
PyQt5通信机制 信号与槽详解
2019/08/07 Python
python爬虫 requests-html的使用
2020/11/30 Python
HTML利用九宫格原理进行网页布局
2020/03/13 HTML / CSS
铲车司机岗位职责
2014/03/15 职场文书
班委竞选演讲稿
2014/04/28 职场文书
道德演讲稿
2014/05/21 职场文书
建筑工地大门标语
2014/06/18 职场文书
授权收款委托书
2014/09/23 职场文书
2015届大学生就业推荐表自我评价
2014/09/27 职场文书
民事诉讼代理授权委托书
2014/10/11 职场文书
深入开展党的群众路线教育实践活动心得体会
2014/11/05 职场文书
无锡灵山大佛导游词
2015/02/09 职场文书
MongoDB balancer的使用详解
2021/04/30 MongoDB