实现浏览器内多个标签页之间的通信

好久不见. 提交于 2020-02-26 09:15:39

1.localStorage

在一个标签页调用localStorage.setItem(name,val)保存数据localStorage.removeItem(name)删除数据的时候会触发 'storage'事件。
在另外一个标签页监听document对象的storage事件,在事件event对象属性中获取信息

event事件对象包含以下信息

  1. 1. domain
  2. 2. newValue
  3. 3. oldValue
  4. 4. key

2.cookie

在A页面将需要传递的消息存储在cookie当中

在B页面设置setInterval,以一定的时间间隔去读取cookie的值。

 

  • 调用localstorage,cookies等本地存储方式
  • WebSocket、SharedWorker
  • localstroge另一个浏览器上下文被添加、删除或修改时,它都会触发一个事件,我们通过监听事件,控制它的值来进行页面信息通信。
  • 注意quirks:Safari在无痕迹模式下设置localstorge值抛出QuotExceededError的异常。
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!