iframe子页面与父页面通信根据iframe中src属性是同域链接还是跨域链接,通信方式也不同。
一、同域下父子页面的通信 父页面parent.html
复制代码 代码如下:
<html>
<head>
<script type="text/javascript">
function say(){
alert("parent.html");
}
function callChild(){
myFrame.window.say();
myFrame.window.document.getElementById("button").value="调用结束";
}
</script>
</head>
<body>
<input id="button" type="button" value="调用child.html中的函数say()" onclick="callChild()"/>
<iframe name="myFrame" src="child.html"></iframe>
</body>
</html>
子页面child.html
复制代码 代码如下:
<html>
<head>
<script type="text/javascript">
function say(){
alert("child.html");
}
function callParent(){
parent.say();
parent.window.document.getElementById("button").value="调用结束";
}
</script>
</head>
<body>
<input id="button" type="button" value="调用parent.html中的say()函数" onclick="callParent()"/>
</body>
</html>
方法调用
父页面调用子页面方法:FrameName.window.childMethod();
子页面调用父页面方法:parent.window.parentMethod();
DOM元素访问
获取到页面的window.document对象后,即可访问DOM元素
注意事项
要确保在iframe加载完成后再进行操作,如果iframe还未加载完成就开始调用里面的方法或变量,会产生错误。判断iframe是否加载完成有两种方法:
1. iframe上用onload事件
2. 用document.readyState=="complete"来判断
二、跨域父子页面通信方法 如果iframe所链接的是外部页面,因为安全机制就不能使用同域名下的通信方式了。
父页面向子页面传递数据
实现的技巧是利用location对象的hash值,通过它传递通信数据。在父页面设置iframe的src后面多加个data字符串,然后在子页面中通过某种方式能即时的获取到这儿的data就可以了,例如:
1. 在子页面中通过setInterval方法设置定时器,监听location.href的变化即可获得上面的data信息
2. 然后子页面根据这个data信息进行相应的逻辑处理
子页面向父页面传递数据
实现技巧就是利用一个代理iframe,它嵌入到子页面中,并且和父页面必须保持是同域,然后通过它充分利用上面第一种通信方式的实现原理就把子页面的数据传递给代理iframe,然后由于代理的iframe和主页面是同域的,所以主页面就可以利用同域的方式获取到这些数据。使用 window.top或者window.parent.parent获取浏览器最顶层window对象的引用。
相关推荐:
SEO桔子:提升网站排名的必备法宝,seo外包销售
摘要AI生成:高效工作的新时代利器
为什么网站要做seo,网站做seo的目的是什么 ,ai初选
SEO针对中小企业的增长潜力:如何通过精准优化抢占市场先机,网络推广和营销就选y火10星评价
360优化关键词-提升网站流量与排名的秘密武器,美拍ai
ChatGPT为什么访问不了?全面解析及解决方案,ai首页设计
ChatGPT为什么打不开?背后原因与解决方案,慧ai写作
ChatGPTO1免费:突破智能聊天的极限,体验AI无限可能,糯米ai唱歌
文字生成AI:开启创意写作的新纪元
SEO要不,来看看如何通过SEO优化提高网站流量和曝光度,seo 获客技巧
“洗稿技巧如何让你的文章脱颖而出,轻松提升内容创作水平!”,台州椒江seo企业排名
SEO地位:如何提升你的网站排名与曝光度,抢占市场先机,微营销网络推广
代哥SEO-让您的网站迅速登顶搜索引擎的秘密武器,济南关键词的排名优化
AI一键生成文章,写作新境界
AI上的文章属于原创吗?人工智能创作内容的归属问题
SEO快速提升SEO排名的有效策略:让你的网页飞跃搜索引擎,ai调色食物
“多网建站”助力企业跨越发展,开启全新数字化时代,海南网站优化电池
ChatGPT显示“此网站无法加载站点”:背后原因与解决办法详解,用ai画明度渐变条
AI网页效果生成:开启网站设计的新纪元,ai画线祥云
文章写作AI:让创作更高效、精准的智能助手
seo用什么法宝,列出5种seo赚钱方式 ,ai怎么更改文档样式
seo辅助词选什么,seo助手 ,各车企ai
OpenAI注册问题解决方案:如何顺利通过手机号验证,反对ai头像
SEO有意:如何通过优化策略提升网站排名与流量,天津政府智慧网站建设
SEO目的:如何通过精准优化提高网站流量与转化率,百度推广网站关键词
优化平台:让数字化转型更简单、更高效,莆田谷歌seo品牌排行
SEO课:让你从小白变成搜索引擎优化高手,推广自媒体营销计划
主流seo是什么,seo是什么推广网站 ,AI心理师
怎么用AI生成一篇文章?高效创作指南全揭秘!
如何查文章AI率?全面解析AI文章检测工具及技巧
SEO教你如何快速提升网站排名,打破竞争壁垒!,本溪seo优化排名公司
亚马逊产品seo什么意思,亚马逊平台产品专业术语 ,小新同学ai
为什么要seo 运营,为什么需要seo ,ai人物头盔
SEO能给企业带来什么价值,seo的影响 ,ai蓝衣美女
互联网时代的“搜索截流”新玩法:如何抓住流量红利,甘孜做优化网站软件
好用的AI写作软件免费推荐:创作新境界!
“更加通顺”-让生活与工作无缝衔接的语言魅力,SEO书架书桌收纳
ChatGPTApp怎么调大字体?提升阅读体验,让文字更清晰,推荐ai音频
AI撰写率:让创作变得更高效,助力内容产业腾飞,人力ai
为什么做seo矩阵项目,为什么做seo矩阵项目不能做 ,怎么用ai写作
seo链接锚是什么,什么是锚链接,如何设置锚链接 ,保山智能AI
seo读什么书,seo是哪个专业的 ,亚洲9ai吧
ChatGPT5.0为什么一直没出来?背后的技术与战略,元宵节ai趣赏月
中外链:打通全球流量的桥梁,提升网站排名与流量的双重保障,行业网站建设思路
SEO要素:优化网站排名的关键因素全解析,棒球大联盟营销推广文案
AI网页设计生成-智能化创造无限可能,ai机甲风背景音乐
如何识别文章是否由AI写作:技巧与方法解析
ChatGPT内部HTTP接口文档-为开发者提供高效便捷的AI服务接入方式,安屿ai
高效创作之路:文章AI生成器的力量
如何下载免费AI软件,让你的工作和生活更智能