As part of the interop 2026 effort to align navigation API
implementations across browsers, we've made a few subtle behavior
changes to the navigation API. Most users should not be affected. The
main impact is avoiding `navigateerror` events from firing when no
error occurred.

The changes are as follows:
(1) A navigation succeeds synchronously if it is not synchronously
intercepted/aborted. Before this change, navigating multiple times in
the same synchronous execution (e.g. calling `location.href` with a
hash multiple times) would trigger `navigateerror` because every
navigation "aborts" the previous one.

This occurred because the navigation required at least one microtask
to be considered successful.

(2) A successful cross-document navigation is cleared from the state,
so it doesn't fire a `navigateerror` when returning to the page from
BFCache.

Both changes are spec-compliant, covered with WPT, and interoperable
with Mozilla.

-- 
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAJn%3DMYZUL%2BAaoXfFKkSEQzw%3Dk8-xcS1AvXNu2TqvrKTmySmfVg%40mail.gmail.com.

Reply via email to