0.0.0 • Published 7 years ago

post-message v0.0.0

Weekly downloads
1
License
ISC
Repository
github
Last release
7 years ago

对postMessage的进一步封装

原生postMessage几个痛点:

  1. 需要手动在window对象绑定message事件
  2. 定制化的事件需要再次封装

适用场景:

iframe嵌套下的父子通信,父子iframe通信

API

let pm = new PostMessage()

初始化pm对象,默认监听ping事件

on (eventName, callback)

定制化的事件监听

pm.on('custom', function (data) {
  console.log(data);
})

emit (eventName, message, url)

默认向上发射事件,也可以定制发射的url(可选:window href)

pm.emit('ping', Math.random());

broadcast (eventName, message)

向下广播事件

pm.broadcast('ping', Math.random());

Demo

demo