MapQuest.js
L.mapquest.locatorControl(options)
A single button control that locates the user on the map when clicked. The control then places an icon on their current location and zooms into that location. The marker color, zoom level, control position, and other properties of the control are customizable.
Syntax
js
L.mapquest.key = 'KEY';
var map = L.mapquest.map('map', {
center: [39.7392,-104.9903],
layers: L.mapquest.tileLayer('map'),
zoom: 12
});
map.addControl(L.mapquest.locatorControl());
Parameters
Options Object
An object containing any of the following key value options: position, zoom, defaultLocation, title, className, markerPrimaryColor, markerSecondaryColor.
Request Parameter | Description | Required |
---|---|---|
className String | A custom CSS class name to assign to the control. | No |
defaultLocation Position Object | Set a default location for the control to locate. Requires a position object. | No |
enableHighAccuracy Boolean | Indicates the application would like to receive the best possible results. If true and if the device is able to provide a more accurate position, it will do so. Note that this can result in slower response times or increased power consumption (with a GPS chip on a mobile device for example). On the other hand, if false, the device can take the liberty to save resources by responding more quickly and/or using less power. | No, defaults to true |
markerPrimaryColor String | The primary color of the via marker added to the map. | No, defaults to '#333333' |
markerSecondaryColor String | The secondary color of the via marker added to the map. | No, defaults to '#b7b7b7' |
maximumAge long | The maximum age in milliseconds of a possible cached position that is acceptable to return. If set to 0, it means that the device cannot use a cached position and must attempt to retrieve the real current position. If set to Infinity the device must return a cached position regardless of its age. | No, defaults to 0 |
position String | The position of the control (one of the map corners). Possible values are 'topleft', 'topright', 'bottomleft' or 'bottomright'. | No, defaults to 'topright' |
timeout long | The maximum length of time (in milliseconds) the device is allowed to take in order to return a position. | No, defaults to 5000 |
title String | Text for the browser tooltip that appear on control hover. | No, defaults to 'Locator' |
zoom Number | The zoom level that the map zooms to when the location of the user is found. | No, defaults to 16 |
Example
js
{
className: '',
enableHighAccuracy: true,
markerPrimaryColor: '#333333',
markerSecondaryColor: '#b7b7b7',
maximumAge: 0,
position: 'topright',
timeout: 5000,
title: 'Locator',
zoom: 16
}
Events
current_position
A current_position
event is fired when a position is successfully returned by the geolocation api. Returns a position object.
Example
js
locatorControl.on('current_position', function(eventResponse) {
console.log(eventResponse);
});
Return Value
An L.Control object that can be added to a map with the addControl() function.