美文网首页
同源跨页面通信

同源跨页面通信

作者: 人穷脸丑小前端 | 来源:发表于2019-04-02 10:57 被阅读0次

同源跨页面通信小记

BroadcastChannel

The BroadcastChannel interface represents a named channel that any browsing context of a given origin can subscribe to. It allows communication between different documents (in different windows, tabs, frames or iframes) of the same origin. Messages are broadcasted via a message event fired at all BroadcastChannel objects listening to the channel.

BroadcastChannel接口表示指定源的任何浏览上下文可以订阅的命名通道。它允许相同来源的不同文档(在不同的窗口,选项卡,框架或iframe中)之间的通信。通过在监听频道的所有对象上触发的事件来广播消息。

BroadcastChannel()接收一个参数name,即通道名称。页面可以有多个通道,需要用name区分。
BroadcastChannel实例可以调用postMessage就可以发送消息(参数可以是任何类型)。
通过对BroadcastChannel实例添加message事件就可以接收消息。

<div id="text-box"></div>
<button id="submit-text">发送消息</button>
<script>

  const bc=new BroadcastChannel('kevin');
  const textBox=document.querySelector('#text-box');
  const btn=document.querySelector('#submit-text');
  bc.addEventListener('message',(e)=>{
      textBox.innerHTML=e.data;
  });
  btn.addEventListener('click',()=>{
      bc.postMessage('消息来了'+(+new Date()));
  })


</script>

那么在不同的窗口,选项卡,框架或iframe中。有一个页面发出广播,其他页面都会收到消息(发消息的页面不会触发受到消息事件)

相关文章

  • 前端跨页面通信

    跨页面通信主要分两大类 同源页面间的跨页面通信 非同源页面间的跨页面通信 同源页面间的跨页面通信 1.BroadC...

  • 同源跨页面通信

    同源跨页面通信小记 BroadcastChannel The BroadcastChannel interface...

  • 前端跨tab页通信

    一、同源页面间的跨页面通信 BroadCast Channel Service WorkerService Wor...

  • web同源跨页面通信

    先看最终的效果: 1. web端同源跨页面通信 同源是指具有相同的根地址,相同的端口号,如http://local...

  • 跨域问题

    跨域问题来自同源策略。 同源策略: 协议 域名 端口 带来影响:页面在进行通信的时候,dom ajax cooki...

  • postMessage解决跨域、跨窗口消息传递

    如果需要在页面内嵌的iframe页面中传递数据到当前页面中,很可能涉及到跨域和跨窗口通信,这是浏览器的同源策略所不...

  • 前端面试必备之跨域通信的方式

    同源:协议、域名、端口相同 跨域通信: js进行DOM操作,通信时如果目标与当前窗口不满足同源条件,浏览器为了安全...

  • 监听localStorage中值的变化实现跨页面通信

    本次分享一个之前困扰很久的,跨页面之间的通信方式。 以前跨页面通信,就拿我们之前vue项目中多页面为例,每个页面都...

  • 跨域问题汇总---最简单的解决方案 2019-09-05

    一、跨域形成的原因 1、跨域的限制是因为同源策略,同源策略约定了某一个页面向服务器发起ajax请求时,页面的资源地...

  • 前端跨域问题(转载笔记)

    前端跨域问题 浏览器的同源策略 提到跨域不能不先说一下”同源策略”。何为同源?只有当协议、端口、和域名都相同的页面...

网友评论

      本文标题:同源跨页面通信

      本文链接:https://www.haomeiwen.com/subject/ieewbqtx.html