首页 > 其他分享 >使用postMessage实现iframe和父页面通信

使用postMessage实现iframe和父页面通信

时间:2023-08-28 15:46:56浏览次数:31  
标签:postMessage log window iframe message 页面

语法

语法
otherWindow.postMessage(message, targetOrigin, [transfer]);
otherWindow 其他窗口的一个引用,例如向子窗口发送 则otherWindow 是子窗口的window对象

父页面向子页面Iframe通信

// 父页面
     //获取iframe元素
    const iFrame:SafeAny = document.getElementById('myFrame')

    //iframe加载完毕后再发送消息,否则子页面接收不到message
    iFrame.onload = function(){

     //iframe加载完立即发送一条消息 iframe.contentWindow返回的是iframe的window对象 
     iFrame.contentWindow.postMessage('message1','*');
    }
// 子页面
    window.addEventListener('message', function (e) {
			try {
				console.log(e.data) // message1  
			} catch (error) {
				console.log(error)
			}
		},false)

子页面Iframe向父页面通信

// 子页面
// 注意要使用父页面的window window.parent
    window.parent.postMessage(JSON.stringify('message2','*');
// 父页面
     window.addEventListener('message', function (e) {
      try {
        console.log(e.data) // message2  
      } catch (error) {
        console.log(error)
      }
    },false)

标签:postMessage,log,window,iframe,message,页面
From: https://www.cnblogs.com/momoli/p/17662426.html

相关文章

  • RabbitMQ 管理页面该如何查看有哪些连接
    用浏览器访问  http://192.168.1.100:15672   默认用户名:admin   密码: admin 登陆后显示 在Connections页中查看所有连接    ......
  • vue3同一页面内重复引用同一操作dom的组件产生的问题
    [2023年8月28日12:39:40]vue3同一页面内标签<component>重复引用同一组件,且该组件内使用css选择器进行dom操作导致页面内相同组件发生变化的问题解决记录组件内进行dom操作,需要通过js方法进行选择器的元素获取,但当vue3全部渲染完毕后,页面内有多个id为test9的相同元素,元素选择将......
  • 用P3P解决IE的iframe中每次跨域请求产生新session的问题
    初来乍到,看到一篇cookie夸域的帖子,觉的他只是解决了跨二级域名的问题,自己曾经作过一个企业应用的sso,其中用到的p3p解决了cookie跨域的存取。 第一次发帖,请各位高手多多指教 首先介绍第一方Cookie和第三方cookie: 第一方Cookie是来自当前正在查看的网站,或者发送到当前正在查看的......
  • js 判断如果是移动端就自动跳转到 移动端的页面上去
    js判断如果是移动端就自动跳转到移动端的页面上去 <script>!(function(){constuserAgent=naviator.userAgent;constandroid=userAgent.match(/(Android);?[\s\/]+([\d.]+)?/);constiphone=userAgent.......
  • 页面简介
    uni-app项目中,一个页面就是一个符合VueSFC规范的vue文件。在uni-appjs引擎版中,后缀名是.vue文件或.nvue文件。在uni-appx中,后缀名是.uvue文件这些页面均全平台支持,差异在于当uni-app发行到App平台时,.vue文件会使用webview进行渲染,.nvue会使用原生进行渲染,详见:nvue......
  • Stable Diffusion Web UI页面CCS无效问题
    安装后进入http://127.0.0.1:7860,StableDiffusionWebUI页面CCS好像没有加载成功,显示如下: 最后发现,在webui-user.bat加入share参数后,页面正常了setCOMMANDLINE_ARGS=--share ......
  • 企业网站建设需要哪些基础页面(企业网站页面功能与作用)
    企业网站作为企业的门面,是互联网上展示公司形象、产品、服务以及文化的一个重要平台。一个优秀的企业网站一般需要包含一系列的关键页面。下面广州名锐讯动总结了一些常见的企业网站页面并将介绍页面的功能和作用。1.首页:首页作为企业网站的第一个页面,一般用户点击进入网站第一眼......
  • Nginx配置站点502维护页面
    在站点后端服务如果宕掉或在重启的时候,用户访问网站时,nginx引导跳转到网站维护页面。  为了实现这个功能,需要在Nginx配置中做两件事情:定义一个备用的错误页面:为Nginx设置一个备用页面,当后端服务不可用时,它将显示这个页面。使用proxy_intercept_errors指令:使......
  • .NET敏捷开发框架-RDIFramework.NET V6.0发布
    1、RDIFramework.NET敏捷开发框架介绍RDIFramework.NET敏捷开发框架,是我司重磅推出的基于最新.NET6+与.NETFramework的快速信息化系统开发、整合框架,为企业快速构建跨平台、企业级的应用提供了强大支持。开发人员不需要开发系统的基础功能和公共模块,框架自身提供了强大的函数......
  • 【校招VIP】前端校招考点之页面转换算法
    考点介绍:在地址映射过程中,若在页面中发现所要访问的页面不在内存中,则产生缺页中断。当发生缺页中断时,如果操作系统内存中没有空闲页面,则操作系统必须在内存选择一个页面将其移出内存,以便为即将调入的页面让出空间。而用来选择淘汰哪一页的规则叫做页面置换算法。一、考点题目1......