---
title: "NavigateEvent | JavaScript maps SDK"
description: "Documentation for MapTiler SDK"
---

# Interface NavigateEvent

The **`NavigateEvent`** interface of the Navigation API is the event object for the navigate event, which fires when any type of navigation is initiated (this includes usage of History API features like History.go()). NavigateEvent provides access to information about that navigation, and allows developers to intercept and control the navigation handling.

[MDN Reference](https://developer.mozilla.org/docs/Web/API/NavigateEvent)

interface NavigateEvent {  
    [AT\_TARGET](#at_target): 2;  
    [bubbles](#bubbles): boolean;  
    [BUBBLING\_PHASE](#bubbling_phase): 3;  
    [cancelable](#cancelable): boolean;  
    [cancelBubble](#cancelbubble): boolean;  
    [canIntercept](#canintercept): boolean;  
    [CAPTURING\_PHASE](#capturing_phase): 1;  
    [composed](#composed): boolean;  
    [currentTarget](#currenttarget): EventTarget | null;  
    [defaultPrevented](#defaultprevented): boolean;  
    [destination](#destination): [NavigationDestination](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.NavigationDestination/);  
    [downloadRequest](#downloadrequest): string | null;  
    [eventPhase](#eventphase): number;  
    [formData](#formdata): FormData | null;  
    [hashChange](#hashchange): boolean;  
    [hasUAVisualTransition](#hasuavisualtransition): boolean;  
    [info](#info): any;  
    [isTrusted](#istrusted): boolean;  
    [navigationType](#navigationtype): [NavigationType](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.NavigationType/);  
    [NONE](#none): 0;  
    [returnValue](#returnvalue): boolean;  
    [signal](#signal): AbortSignal;  
    [sourceElement](#sourceelement): [Element](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.Element/) | null;  
    [srcElement](#srcelement): EventTarget | null;  
    [target](#target): EventTarget | null;  
    [timeStamp](#timestamp): number;  
    [type](#type): string;  
    [userInitiated](#userinitiated): boolean;  
    [composedPath](#composedpath-1)(): EventTarget\[\];  
    [initEvent](#initevent-1)(type: string, bubbles?: boolean, cancelable?: boolean): void;  
    [intercept](#intercept-1)(options?: [NavigationInterceptOptions](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.NavigationInterceptOptions/)): void;  
    [preventDefault](#preventdefault-1)(): void;  
    [scroll](#scroll-1)(): void;  
    [stopImmediatePropagation](#stopimmediatepropagation-1)(): void;  
    [stopPropagation](#stoppropagation-1)(): void;  
}

#### Hierarchy

-   Event
    -   NavigateEvent

##### Index

### Properties[](#properties)

[AT\_TARGET](#at_target) [bubbles](#bubbles) [BUBBLING\_PHASE](#bubbling_phase) [cancelable](#cancelable) [cancelBubble](#cancelbubble) [canIntercept](#canintercept) [CAPTURING\_PHASE](#capturing_phase) [composed](#composed) [currentTarget](#currenttarget) [defaultPrevented](#defaultprevented) [destination](#destination) [downloadRequest](#downloadrequest) [eventPhase](#eventphase) [formData](#formdata) [hashChange](#hashchange) [hasUAVisualTransition](#hasuavisualtransition) [info](#info) [isTrusted](#istrusted) [navigationType](#navigationtype) [NONE](#none) [returnValue](#returnvalue) [signal](#signal) [sourceElement](#sourceelement) [srcElement](#srcelement) [target](#target) [timeStamp](#timestamp) [type](#type) [userInitiated](#userinitiated)

### Methods[](#methods)

[composedPath](#composedpath) [initEvent](#initevent) [intercept](#intercept) [preventDefault](#preventdefault) [scroll](#scroll) [stopImmediatePropagation](#stopimmediatepropagation) [stopPropagation](#stoppropagation)

## Properties[](#properties-1)

### `Readonly`AT\_TARGET[](#at_target)

AT\_TARGET: 2

Inherited from Event.AT\_TARGET

### `Readonly`bubbles[](#bubbles)

bubbles: boolean

The **`bubbles`** read-only property of the Event interface indicates whether the event bubbles up through the DOM tree or not.

[MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/bubbles)

Inherited from Event.bubbles

### `Readonly`BUBBLING\_PHASE[](#bubbling_phase)

BUBBLING\_PHASE: 3

Inherited from Event.BUBBLING\_PHASE

### `Readonly`cancelable[](#cancelable)

cancelable: boolean

The **`cancelable`** read-only property of the Event interface indicates whether the event can be canceled, and therefore prevented as if the event never happened.

[MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/cancelable)

Inherited from Event.cancelable

### cancelBubble[](#cancelbubble)

cancelBubble: boolean

The **`cancelBubble`** property of the Event interface is deprecated. Use Event.stopPropagation() instead. Setting its value to true before returning from an event handler prevents propagation of the event. In later implementations, setting this to false does nothing. See Browser compatibility for details.

#### Deprecated[](#deprecated)

[MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/cancelBubble)

Inherited from Event.cancelBubble

### `Readonly`canIntercept[](#canintercept)

canIntercept: boolean

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

[MDN Reference](https://developer.mozilla.org/docs/Web/API/NavigateEvent/canIntercept)

### `Readonly`CAPTURING\_PHASE[](#capturing_phase)

CAPTURING\_PHASE: 1

Inherited from Event.CAPTURING\_PHASE

### `Readonly`composed[](#composed)

composed: boolean

The read-only **`composed`** property of the Event interface returns a boolean value which indicates whether or not the event will propagate across the shadow DOM boundary into the standard DOM.

[MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/composed)

Inherited from Event.composed

### `Readonly`currentTarget[](#currenttarget)

currentTarget: EventTarget | null

The **`currentTarget`** read-only property of the Event interface identifies the element to which the event handler has been attached.

[MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/currentTarget)

Inherited from [KeyboardEvent](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.KeyboardEvent/).[currentTarget](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.KeyboardEvent/#currenttarget)

### `Readonly`defaultPrevented[](#defaultprevented)

defaultPrevented: boolean

The **`defaultPrevented`** read-only property of the Event interface returns a boolean value indicating whether or not the call to Event.preventDefault() canceled the event.

[MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/defaultPrevented)

Inherited from Event.defaultPrevented

### `Readonly`destination[](#destination)

destination: [NavigationDestination](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.NavigationDestination/)

The **`destination`** read-only property of the NavigateEvent interface returns a NavigationDestination object representing the destination being navigated to.

[MDN Reference](https://developer.mozilla.org/docs/Web/API/NavigateEvent/destination)

### `Readonly`downloadRequest[](#downloadrequest)

downloadRequest: string | null

The **`downloadRequest`** read-only property of the NavigateEvent interface returns the filename of the file requested for download, in the case of a download navigation (e.g., an or  element with a download attribute), or null otherwise.

[MDN Reference](https://developer.mozilla.org/docs/Web/API/NavigateEvent/downloadRequest)

### `Readonly`eventPhase[](#eventphase)

eventPhase: number

The **`eventPhase`** read-only property of the Event interface indicates which phase of the event flow is currently being evaluated.

[MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/eventPhase)

Inherited from Event.eventPhase

### `Readonly`formData[](#formdata)

formData: FormData | null

The **`formData`** read-only property of the NavigateEvent interface returns the FormData object representing the submitted data in the case of a POST form submission, or null otherwise.

[MDN Reference](https://developer.mozilla.org/docs/Web/API/NavigateEvent/formData)

### `Readonly`hashChange[](#hashchange)

hashChange: boolean

The **`hashChange`** read-only property of the NavigateEvent interface returns true if the navigation is a fragment navigation (i.e., to a fragment identifier in the same document), or false otherwise.

[MDN Reference](https://developer.mozilla.org/docs/Web/API/NavigateEvent/hashChange)

### `Readonly`hasUAVisualTransition[](#hasuavisualtransition)

hasUAVisualTransition: boolean

The **`hasUAVisualTransition`** read-only property of the NavigateEvent interface returns true if the user agent performed a visual transition for this navigation before dispatching this event, or false otherwise.

[MDN Reference](https://developer.mozilla.org/docs/Web/API/NavigateEvent/hasUAVisualTransition)

### `Readonly`info[](#info)

info: any

The **`info`** read-only property of the NavigateEvent interface returns the info data value passed by the initiating navigation operation (e.g., Navigation.back(), or Navigation.navigate()), or undefined if no info data was passed.

[MDN Reference](https://developer.mozilla.org/docs/Web/API/NavigateEvent/info)

### `Readonly`isTrusted[](#istrusted)

isTrusted: boolean

The **`isTrusted`** read-only property of the Event interface is a boolean value that is true when the event was generated by the user agent (including via user actions and programmatic methods such as HTMLElement.focus()), and false when the event was dispatched via EventTarget.dispatchEvent(). The only exception is the click event, which initializes the isTrusted property to false in user agents.

[MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/isTrusted)

Inherited from Event.isTrusted

### `Readonly`navigationType[](#navigationtype)

navigationType: [NavigationType](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.NavigationType/)

The **`navigationType`** read-only property of the NavigateEvent interface returns the type of the navigation — push, reload, replace, or traverse.

[MDN Reference](https://developer.mozilla.org/docs/Web/API/NavigateEvent/navigationType)

### `Readonly`NONE[](#none)

NONE: 0

Inherited from Event.NONE

### returnValue[](#returnvalue)

returnValue: boolean

The Event property **`returnValue`** indicates whether the default action for this event has been prevented or not.

#### Deprecated[](#deprecated-1)

[MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/returnValue)

Inherited from Event.returnValue

### `Readonly`signal[](#signal)

signal: AbortSignal

The **`signal`** read-only property of the NavigateEvent interface returns an AbortSignal, which will become aborted if the navigation is cancelled (e.g., by the user pressing the browser's "Stop" button, or another navigation starting and thus cancelling the ongoing one).

[MDN Reference](https://developer.mozilla.org/docs/Web/API/NavigateEvent/signal)

### `Readonly`sourceElement[](#sourceelement)

sourceElement: [Element](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.Element/) | null

The **`sourceElement`** read-only property of the NavigateEvent interface returns an Element object representing the initiating element, in cases where the navigation was initiated by an element.

[MDN Reference](https://developer.mozilla.org/docs/Web/API/NavigateEvent/sourceElement)

### `Readonly`srcElement[](#srcelement)

srcElement: EventTarget | null

The deprecated **`Event.srcElement`** is an alias for the Event.target property. Use Event.target instead.

#### Deprecated[](#deprecated-2)

[MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/srcElement)

Inherited from [KeyboardEvent](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.KeyboardEvent/).[srcElement](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.KeyboardEvent/#srcelement)

### `Readonly`target[](#target)

target: EventTarget | null

The read-only **`target`** property of the Event interface is a reference to the object onto which the event was dispatched. It is different from Event.currentTarget when the event handler is called during the bubbling or capturing phase of the event.

[MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/target)

Inherited from Event.target

### `Readonly`timeStamp[](#timestamp)

timeStamp: number

The **`timeStamp`** read-only property of the Event interface returns the time (in milliseconds) at which the event was created.

[MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/timeStamp)

Inherited from Event.timeStamp

### `Readonly`type[](#type)

type: string

The **`type`** read-only property of the Event interface returns a string containing the event's type. It is set when the event is constructed and is the name commonly used to refer to the specific event, such as click, load, or error.

[MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/type)

Inherited from Event.type

### `Readonly`userInitiated[](#userinitiated)

userInitiated: boolean

The **`userInitiated`** read-only property of the NavigateEvent interface returns true if the navigation was initiated by the user (e.g., by clicking a link, submitting a form, or pressing the browser's "Back"/"Forward" buttons), or false otherwise.

[MDN Reference](https://developer.mozilla.org/docs/Web/API/NavigateEvent/userInitiated)

## Methods[](#methods-1)

### composedPath[](#composedpath)

-   composedPath(): EventTarget\[\][](#composedpath-1)
    
    The **`composedPath()`** method of the Event interface returns the event's path which is an array of the objects on which listeners will be invoked. This does not include nodes in shadow trees if the shadow root was created with its ShadowRoot.mode closed.
    
    [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/composedPath)
    
    #### Returns EventTarget\[\]
    
    Inherited from Event.composedPath
    

### initEvent[](#initevent)

-   initEvent(type: string, bubbles?: boolean, cancelable?: boolean): void[](#initevent-1)
    
    The **`Event.initEvent()`** method is used to initialize the value of an event created using Document.createEvent().
    
    #### Parameters
    
    -   type: string
    -   `Optional`bubbles: boolean
    -   `Optional`cancelable: boolean
    
    #### Returns void
    
    #### Deprecated[](#deprecated-3)
    
    [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/initEvent)
    
    Inherited from Event.initEvent
    

### intercept[](#intercept)

-   intercept(options?: [NavigationInterceptOptions](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.NavigationInterceptOptions/)): void[](#intercept-1)
    
    The **`intercept()`** method of the NavigateEvent interface intercepts this navigation, turning it into a same-document navigation to the destination URL.
    
    [MDN Reference](https://developer.mozilla.org/docs/Web/API/NavigateEvent/intercept)
    
    #### Parameters
    
    -   `Optional`options: [NavigationInterceptOptions](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.NavigationInterceptOptions/)
    
    #### Returns void
    

### preventDefault[](#preventdefault)

-   preventDefault(): void[](#preventdefault-1)
    
    The **`preventDefault()`** method of the Event interface tells the user agent that the event is being explicitly handled, so its default action, such as page scrolling, link navigation, or pasting text, should not be taken.
    
    [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/preventDefault)
    
    #### Returns void
    
    Inherited from Event.preventDefault
    

### scroll[](#scroll)

-   scroll(): void[](#scroll-1)
    
    The **`scroll()`** method of the NavigateEvent interface can be called to manually trigger the browser-driven scrolling behavior that occurs in response to the navigation, if you want it to happen before the navigation handling has completed.
    
    [MDN Reference](https://developer.mozilla.org/docs/Web/API/NavigateEvent/scroll)
    
    #### Returns void
    

### stopImmediatePropagation[](#stopimmediatepropagation)

-   stopImmediatePropagation(): void[](#stopimmediatepropagation-1)
    
    The **`stopImmediatePropagation()`** method of the Event interface prevents other listeners of the same event from being called.
    
    [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/stopImmediatePropagation)
    
    #### Returns void
    
    Inherited from Event.stopImmediatePropagation
    

### stopPropagation[](#stoppropagation)

-   stopPropagation(): void[](#stoppropagation-1)
    
    The **`stopPropagation()`** method of the Event interface prevents further propagation of the current event in the capturing and bubbling phases. It does not, however, prevent any default behaviors from occurring; for instance, clicks on links are still processed. If you want to stop those behaviors, see the preventDefault() method. It also does not prevent propagation to other event-handlers of the current element. If you want to stop those, see stopImmediatePropagation().
    
    [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/stopPropagation)
    
    #### Returns void
    
    Inherited from Event.stopPropagation
