On this page

Type Alias MapEventType

MapEventType - a mapping between the event name and the event value. These events are used with the Map.on method. When using a layerId with Map.on method, please refer to MapLayerEventType. The following example can be used for all the events.

// Initialize the map
let map = new Map({ // map options });
// Set an event listener
map.on('the-event-name', () => {
  console.log('An event has occurred!');
});
type MapEventType = {
    boxzoomcancel: MapLibreZoomEvent;
    boxzoomend: MapLibreZoomEvent;
    boxzoomstart: MapLibreZoomEvent;
    click: MapMouseEvent;
    contextmenu: MapMouseEvent;
    cooperativegestureprevented: MapLibreEvent<WheelEvent | TouchEvent> & {
        gestureType: "wheel_zoom" | "touch_pan";
    };
    data: MapDataEvent;
    dataabort: MapDataEvent;
    dataloading: MapDataEvent;
    dblclick: MapMouseEvent;
    drag: MapLibreEvent<MouseEvent | TouchEvent | undefined>;
    dragend: MapLibreEvent<MouseEvent | TouchEvent | undefined>;
    dragstart: MapLibreEvent<MouseEvent | TouchEvent | undefined>;
    error: ErrorEvent;
    idle: MapLibreEvent;
    load: MapLibreEvent;
    mousedown: MapMouseEvent;
    mousemove: MapMouseEvent;
    mouseout: MapMouseEvent;
    mouseover: MapMouseEvent;
    mouseup: MapMouseEvent;
    move: MapLibreEvent<MouseEvent | TouchEvent | WheelEvent | undefined>;
    moveend: MapLibreEvent<MouseEvent | TouchEvent | WheelEvent | undefined>;
    movestart: MapLibreEvent<MouseEvent | TouchEvent | WheelEvent | undefined>;
    pitch: MapLibreEvent<MouseEvent | TouchEvent | undefined>;
    pitchend: MapLibreEvent<MouseEvent | TouchEvent | undefined>;
    pitchstart: MapLibreEvent<MouseEvent | TouchEvent | undefined>;
    projectiontransition: MapProjectionEvent;
    remove: MapLibreEvent;
    render: MapLibreEvent;
    resize: MapLibreEvent;
    rotate: MapLibreEvent<MouseEvent | TouchEvent | undefined>;
    rotateend: MapLibreEvent<MouseEvent | TouchEvent | undefined>;
    rotatestart: MapLibreEvent<MouseEvent | TouchEvent | undefined>;
    sourcedata: MapSourceDataEvent;
    sourcedataabort: MapSourceDataEvent;
    sourcedataloading: MapSourceDataEvent;
    styledata: MapStyleDataEvent;
    styledataloading: MapStyleDataEvent;
    styleimagemissing: MapStyleImageMissingEvent;
    terrain: MapTerrainEvent;
    tiledataloading: MapDataEvent;
    touchcancel: MapTouchEvent;
    touchend: MapTouchEvent;
    touchmove: MapTouchEvent;
    touchstart: MapTouchEvent;
    webglcontextlost: MapContextEvent;
    webglcontextrestored: MapContextEvent;
    wheel: MapWheelEvent;
    zoom: MapLibreEvent<MouseEvent | TouchEvent | WheelEvent | undefined>;
    zoomend: MapLibreEvent<MouseEvent | TouchEvent | WheelEvent | undefined>;
    zoomstart: MapLibreEvent<MouseEvent | TouchEvent | WheelEvent | undefined>;
}
Index

Properties

boxzoomcancel: MapLibreZoomEvent

Fired when the user cancels a "box zoom" interaction, or when the bounding box does not meet the minimum size threshold. See BoxZoomHandler.

boxzoomend: MapLibreZoomEvent

Fired when a "box zoom" interaction ends. See BoxZoomHandler.

boxzoomstart: MapLibreZoomEvent

Fired when a "box zoom" interaction starts. See BoxZoomHandler.

Fired when a pointing device (usually a mouse) is pressed and released at the same point on the map.

contextmenu: MapMouseEvent

Fired when the right button of the mouse is clicked or the context menu key is pressed within the map.

cooperativegestureprevented: MapLibreEvent<WheelEvent | TouchEvent> & {
    gestureType: "wheel_zoom" | "touch_pan";
}

Fired whenever the cooperativeGestures option prevents a gesture from being handled by the map. This is useful for showing your own UI when this happens.

Fired when any map data loads or changes. See MapDataEvent for more information.

dataabort: MapDataEvent

Fired when a request for one of the map's sources' tiles or data is aborted.

dataloading: MapDataEvent

Fired when any map data (style, source, tile, etc) begins loading or changing asynchronously. All dataloading events are followed by a data, dataabort or error event.

dblclick: MapMouseEvent

Fired when a pointing device (usually a mouse) is pressed and released twice at the same point on the map in rapid succession.

!!! note Under normal conditions, this event will be preceded by two click events.

drag: MapLibreEvent<MouseEvent | TouchEvent | undefined>

Fired repeatedly during a "drag to pan" interaction. See DragPanHandler.

dragend: MapLibreEvent<MouseEvent | TouchEvent | undefined>

Fired when a "drag to pan" interaction ends. See DragPanHandler.

dragstart: MapLibreEvent<MouseEvent | TouchEvent | undefined>

Fired when a "drag to pan" interaction starts. See DragPanHandler.

error: ErrorEvent

Fired when an error occurs. This is GL JS's primary error reporting mechanism. We use an event instead of throw to better accommodate asynchronous operations. If no listeners are bound to the error event, the error will be printed to the console.

Fired after the last frame rendered before the map enters an "idle" state:

  • No camera transitions are in progress
  • All currently requested tiles have loaded
  • All fade/transition animations have completed

Fired immediately after all necessary resources have been downloaded and the first visually complete rendering of the map has occurred.

mousedown: MapMouseEvent

Fired when a pointing device (usually a mouse) is pressed within the map.

mousemove: MapMouseEvent

Fired when a pointing device (usually a mouse) is moved while the cursor is inside the map. As you move the cursor across the map, the event will fire every time the cursor changes position within the map.

mouseout: MapMouseEvent

Fired when a point device (usually a mouse) leaves the map's canvas.

mouseover: MapMouseEvent

Fired when a pointing device (usually a mouse) is moved within the map. As you move the cursor across a web page containing a map, the event will fire each time it enters the map or any child elements.

mouseup: MapMouseEvent

Fired when a pointing device (usually a mouse) is released within the map.

Fired repeatedly during an animated transition from one view to another, as the result of either user interaction or methods such as Map.flyTo.

moveend: MapLibreEvent<MouseEvent | TouchEvent | WheelEvent | undefined>

Fired just after the map completes a transition from one view to another, as the result of either user interaction or methods such as Map.jumpTo.

movestart: MapLibreEvent<MouseEvent | TouchEvent | WheelEvent | undefined>

Fired just before the map begins a transition from one view to another, as the result of either user interaction or methods such as Map.jumpTo.

pitch: MapLibreEvent<MouseEvent | TouchEvent | undefined>

Fired repeatedly during the map's pitch (tilt) animation between one state and another as the result of either user interaction or methods such as Map.flyTo.

pitchend: MapLibreEvent<MouseEvent | TouchEvent | undefined>

Fired immediately after the map's pitch (tilt) finishes changing as the result of either user interaction or methods such as Map.flyTo.

pitchstart: MapLibreEvent<MouseEvent | TouchEvent | undefined>

Fired whenever the map's pitch (tilt) begins a change as the result of either user interaction or methods such as Map.flyTo .

projectiontransition: MapProjectionEvent

Fired when map's projection is modified in other ways than by map being moved.

Fired immediately after the map has been removed with Map.remove.

Fired whenever the map is drawn to the screen, as the result of

  • a change to the map's position, zoom, pitch, or bearing
  • a change to the map's style
  • a change to a GeoJSON source
  • the loading of a vector tile, GeoJSON file, glyph, or sprite

Fired immediately after the map has been resized.

rotate: MapLibreEvent<MouseEvent | TouchEvent | undefined>

Fired repeatedly during a "drag to rotate" interaction. See DragRotateHandler.

rotateend: MapLibreEvent<MouseEvent | TouchEvent | undefined>

Fired when a "drag to rotate" interaction ends. See DragRotateHandler.

rotatestart: MapLibreEvent<MouseEvent | TouchEvent | undefined>

Fired when a "drag to rotate" interaction starts. See DragRotateHandler.

sourcedata: MapSourceDataEvent

Fired when one of the map's sources loads or changes, including if a tile belonging to a source loads or changes.

sourcedataabort: MapSourceDataEvent

Fired when a request for one of the map's sources' data is aborted.

sourcedataloading: MapSourceDataEvent

Fired when one of the map's sources begins loading or changing asynchronously. All sourcedataloading events are followed by a sourcedata, sourcedataabort or error event.

Fired when the map's style loads or changes.

styledataloading: MapStyleDataEvent

Fired when the map's style begins loading or changing asynchronously. All styledataloading events are followed by a styledata or error event.

styleimagemissing: MapStyleImageMissingEvent

Fired when an icon or pattern needed by the style is missing. The missing image can be added with Map.addImage within this event listener callback to prevent the image from being skipped. This event can be used to dynamically generate icons and patterns.

Fired when terrain is changed

tiledataloading: MapDataEvent
touchcancel: MapTouchEvent

Fired when a touchcancel event occurs within the map.

touchend: MapTouchEvent

Fired when a touchend event occurs within the map.

touchmove: MapTouchEvent

Fired when a touchmove event occurs within the map.

touchstart: MapTouchEvent

Fired when a touchstart event occurs within the map.

webglcontextlost: MapContextEvent

Fired when the WebGL context is lost.

webglcontextrestored: MapContextEvent

Fired when the WebGL context is restored.

Fired when a wheel event occurs within the map.

Fired repeatedly during an animated transition from one zoom level to another, as the result of either user interaction or methods such as Map.flyTo.

zoomend: MapLibreEvent<MouseEvent | TouchEvent | WheelEvent | undefined>

Fired just after the map completes a transition from one zoom level to another, as the result of either user interaction or methods such as Map.flyTo.

zoomstart: MapLibreEvent<MouseEvent | TouchEvent | WheelEvent | undefined>

Fired just before the map begins a transition from one zoom level to another, as the result of either user interaction or methods such as Map.flyTo.

Was this helpful?
SDK JS
Reference
MapEventType