此页面由社区从英文翻译而来。了解更多并加入 MDN Web Docs 社区。

View in English Always switch to English

Window:messageerror 事件

基线 广泛可用

自 2023年3月 起,此特性已在主流浏览器中得到支持,可在大多数设备和浏览器版本中正常使用。

Window 对象接收到无法反序列化的消息时,会在该对象上触发 messageerror 事件。

此事件不可取消,也不会冒泡。

语法

addEventListener() 等方法中使用事件名称,或设置事件处理器属性。

js
addEventListener("messageerror", (event) => { })

onmessageerror = (event) => { }

事件类型

一个 MessageEvent。继承自 Event

Event MessageEvent

事件属性

此接口还继承了其父接口 Event 的属性。

MessageEvent.data 只读

由消息发送者发送的数据。

MessageEvent.origin 只读

一个字符串,表示消息发送者的源。

MessageEvent.lastEventId 只读

一个字符串,表示事件的唯一 ID。

MessageEvent.source 只读

一个 MessageEventSource(可以是 WindowProxyMessagePortServiceWorker 对象),表示消息发送者。

MessageEvent.ports 只读

一个 MessagePort 对象的数组,表示与消息所经通道关联的端口(在适当情况下,例如在通道消息传递中,或向共享 worker 发送消息时)。

示例

使用 addEventListener() 监听 messageerror

js
window.addEventListener("messageerror", (event) => {
  console.error(event);
});

同样,也可以使用 onmessageerror 事件处理器属性:

js
window.onmessageerror = (event) => {
  console.error(event);
};

规范

规范
HTML
# event-messageerror
HTML
# handler-window-onmessageerror

浏览器兼容性

参见