coderef

messageerrorBaseline · Widely available

The messageerror event fires on a target, such as a window or worker, when an incoming message cannot be deserialized. This event can fire for many types of messages, such as cross-document messages or broadcast channel messages.

Supported in all major browsers for at least 30 months — safe to use without fallbacks. Baseline since Mar 27, 2023. Widely available since Sep 27, 2025.

Browser support

DesktopChrome
1–59Not supported
60+Supportedsince Jul 25, 2017
Current: 155
Edge
12–17Not supported
18+Supportedsince Oct 2, 2018
Current: 154
Firefox
1–56Not supported
57+Supportedsince Nov 14, 2017
Current: 157
Safari
1–16.3Not supported
16.4+Supportedsince Mar 27, 2023
Current: 27
MobileChrome Android
18–59Not supported
60+Supportedsince Aug 1, 2017
Current: 155
Firefox Android
4–56Not supported
57+Supportedsince Nov 28, 2017
Current: 157
Safari iOS
1–16.3Not supported
16.4+Supportedsince Mar 27, 2023
Current: 27

How to use

This feature is Baseline widely available — use it freely, no fallback needed.

Example

Full syntax and examples are on MDN: messageerror event.

Feature detection

JS · check before using
if ("onmessageerror" in DedicatedWorkerGlobalScope.prototype) {
  // the messageerror event is supported
}

Sub-features

Support for each part of the feature (6). The overall table above shows when the whole feature works.

Sub-featureChromeEdgeFirefoxSafariChrome AndroidFirefox AndroidSafari iOS
DedicatedWorkerGlobalScope.messageerror_event60185716.4605716.4
MessagePort.messageerror_event60185716.4605716.4
ServiceWorkerContainer.messageerror_event80806516.4806516.4
ServiceWorkerGlobalScope.messageerror_event818165✕8165✕
Window.messageerror_event60185716.4605716.4
Worker.messageerror_event✕✕5716.4✕5716.4