Limited availability
Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The canIntercept
read-only property of the NavigateEvent
interface returns true
if the navigation can be intercepted and have its URL rewritten, or false
otherwise
There are several rules around when a navigation can be intercepted. For example:
http
or https
URLs if only the path
, query
, and fragment
portions of the new URL differ from the current URL.file
URLs if only the query
and fragment
portions of the new URL differ.fragment
portion differs.See the spec for more explanation on when a Document can have its URL rewritten, including a table of examples.
ValueA boolean valueâtrue
if the navigation can be intercepted, false
if not.
navigation.addEventListener("navigate", (event) => {
// Some navigations, e.g. cross-origin navigations, we
// cannot intercept. Let the browser handle those normally.
if (!event.canIntercept) {
return;
}
// Don't intercept fragment navigations or downloads.
if (event.hashChange || event.downloadRequest !== null) {
return;
}
event.intercept({
handler() {
if (event.formData) {
processFormDataAndUpdateUI(event.formData, event.signal);
} else {
doSinglePageAppNav(event.destination, event.signal);
}
},
});
});
Specifications Browser compatibility See also
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4