温馨提示×

postMessage的两种使用方式

小云
256
2023-08-15 12:18:53
栏目: 编程语言

postMessage是一个用于跨窗口通信的方法,它有两种使用方式:

  1. 发送消息给指定窗口:可以使用postMessage方法将消息发送给指定的窗口,语法如下:
targetWindow.postMessage(message, targetOrigin);

其中,targetWindow是要接收消息的窗口对象,可以通过window.open()或者window.frames[index]获取;message是要发送的消息,可以是字符串、数字、对象等;targetOrigin是一个字符串,表示目标窗口的源,用于过滤消息,可选参数。

  1. 接收消息:在接收消息的窗口中,可以通过添加一个message事件监听器来接收消息,语法如下:
window.addEventListener("message", handleMessage);

其中,"message"是事件类型,表示接收到新消息时触发;handleMessage是一个回调函数,用于处理接收到的消息。在回调函数中,可以通过event.data获取传递过来的消息内容。

这两种方式可以配合使用,实现跨窗口的双向通信。

0