User interaction (Interaction)
Handlers provide a variety of interactive functions for maps - mouse interaction, touch interaction, and other gesture interaction functions.
BoxZoomHandler
Allows the user to zoom the map to fit within the bounding box. You can define the bounding box by holding down the shift key and dragging the cursor.
Instance members
disable
Disable "box zoom" functionality.
Case
map.boxZoom.disable();
enable
Enable "box zoom" function.
Case
map.boxZoom.enable();
isActive
Returns a Boolean value indicating whether the "box zoom" interaction is active (that is, whether it is currently in use).
Case
const isBoxZoomActive = map.boxZoom.isActive();
isEnabled
Returns a Boolean value indicating whether the "box zoom" interaction is enabled.
Case
const isBoxZoomEnabled = map.boxZoom.isEnabled();
DragPanHandler
Allows the user to pan the map by clicking and dragging the cursor.
Instance members
disable
Disable "drag and pan" interaction.
Case
map.dragPan.disable();
enable
Turn on the "drag and pan" interactive function.
Case
map.dragPan.enable();
isActive
Returns a Boolean value indicating whether the "drag pan" interaction function is active (that is, whether it is currently in use).
Case
const isDragPanActive = map.dragPan.isActive();
isEnabled
Returns a Boolean value indicating whether the "drag and pan" interactive function is enabled.
Case
const isDragPanEnabled = map.dragPan.isEnabled();
DragRotateHandler
Allows the user to rotate the map by holding down the right mouse button and dragging the cursor, or holding down the ctrl key and dragging the cursor.
Instance members
disable
Disable "Drag to Rotate" interactivity.
Case
map.dragRotate.disable();
enable
Turn on the "drag and rotate" interactive function.
Case
map.dragRotate.enable();
isActive
Returns a Boolean value indicating whether the Drag to Rotate interaction is active (i.e., currently in use).
Case
const isDragRotateActive = map.dragRotate.isActive();
isEnabled
Returns a Boolean value indicating whether the "drag and rotate" interactive function is enabled.
Case
const isDragRotateEnabled = map.dragRotate.isEnabled();
DoubleClickZoomHandler
Allows the user to zoom in and out of the map by double-clicking on it.
Instance members
disable
Disable "double-click to zoom" interactivity.
Case
map.doubleClickZoom.disable();
enable
Turn on the "double-click to zoom" interactive function.
Case
map.doubleClickZoom.enable();
isActive
Returns a Boolean value indicating whether the Double-click to Zoom interaction feature is active (that is, whether it is currently in use).
Case
const isDoubleClickZoomActive = map.doubleClickZoom.isActive();
isEnabled
Returns a Boolean value indicating whether the "double-click to zoom" interactive function is enabled.
Case
const isDoubleClickZoomEnabled = map.doubleClickZoom.isEnabled();
KeyboardHandler
Allows users to zoom, rotate, and pan the map using the following keyboard shortcuts:
- = / +: Increase the zoom level by 1 level.
- Shift-= / Shift-+: Increase the zoom level by 2 levels.
- -: Decrease the zoom level by 1 level.
- Shift--: Decrease the zoom level by 2 levels.
- Arrow keys: Pan 100 pixels.
- Shift+⇢: Increase rotation by 15 degrees.
- Shift+⇠: Decrease rotation by 15 degrees.
- Shift+⇡: Increase tilt angle by 10 degrees.
- Shift+⇣: Decrease tilt angle by 10 degrees.
Instance members
disable
Disable keyboard interaction.
Case
map.keyboard.disable();
enable
Enable keyboard interaction.
Case
map.keyboard.enable();
isEnabled
Returns a Boolean value indicating whether the keyboard interaction function is enabled.
Case
const isKeyboardEnabled = map.keyboard.isEnabled();
ScrollZoomHandler
Allows the user to zoom in and out of the map by scrolling.
Instance members
disable
Disable the "Scroll to Zoom" interaction feature.
Case
map.scrollZoom.disable();
enable
Turn on the "Scroll to Zoom" interactive function.
Parameters
| Name | Type | Description | ||||||
|---|---|---|---|---|---|---|---|---|
| options | Object | Requiredparameter
|
Case
map.scrollZoom.enable();
map.scrollZoom.enable({ around:'center'});
isEnabled
Returns a Boolean value indicating whether the "scroll zoom" interaction is enabled.
Case
const isScrollZoomEnabled = map.scrollZoom.isEnabled();
setWheelZoomRate
Set the scrolling zoom ratio.
Parameters
| name | type | default value | description |
|---|---|---|---|
| wheelZoomRate | Number | 1/450 | RequiredScrolling zoom ratio. |
Case
// Slow down the zoom of mouse scrolling
map.scrollZoom.setWheelZoomRate(1 / 600);
setZoomRate
Set the touchpad scaling.
Parameters
| name | type | default value | description |
|---|---|---|---|
| zoomRate | Number | 1/100 | RequiredThe zoom ratio of the touchpad. |
Case
// Accelerate touchpad zooming
map.scrollZoom.setZoomRate(1 / 25);
TouchZoomRotateHandler
Allows users to zoom and rotate the map by pinching the touch screen.
Instance members
disable
Disable the "pinch to rotate and zoom" interaction feature.
Case
map.touchZoomRotate.disable();
disableRotation
Disable the "pinch to rotate" interaction function and enable the "pinch to zoom" interaction function.
Case
map.touchZoomRotate.disableRotation();
enable
Turn on the "Pinch to Rotate and Zoom" interaction feature.
Parameters
| Name | Type | Description | ||||||
|---|---|---|---|---|---|---|---|---|
| options | Object | Requiredparameter
|
Case
map.touchZoomRotate.enable();
map.touchZoomRotate.enable({ around: 'center' });
enableRotation
Turn on the "Pinch to Rotate" interactive feature.
Case
map.touchZoomRotate.enable();
map.touchZoomRotate.enableRotation();
isEnabled
Returns a Boolean value indicating whether the "pinch to rotate and zoom" interactive function is turned on.
Case
const isTouchZoomRotateEnabled = map.touchZoomRotate.isEnabled();