A Leaflet control that search markers/features location by custom property.
Support ajax/jsonp autocompletion and JSON data filter/remapping.
Licensed under the MIT license.
Copyright Stefano Cudini
Tested in Leaflet 0.7.7 and 1.1.1
Demo:
labs.easyblog.it/maps/leaflet-search
Bug tracking:
Websites that use Leaflet.Control.Search
npm install --save leaflet-search
Event | Data | Description |
---|---|---|
'search:locationfound' | {latlng, title, layer} | fired after moved and show markerLocation |
'search:expanded' | {} | fired after control was expanded |
'search:collapsed' | {} | fired after control was collapsed |
Method | Arguments | Description |
---|---|---|
setLayer() | L.LayerGroup() | set layer search at runtime |
showAlert() | 'Text message' | show alert message |
searchText() | 'Text searched' | search text by external code |
(require src/leaflet-search.css)
Adding the search control to the map:
var searchLayer = L.layerGroup().addTo(map);
//... adding data in searchLayer ...
map.addControl( new L.Control.Search({layer: searchLayer}) );
//searchLayer is a L.LayerGroup contains searched markers
Short way:
var searchLayer = L.geoJson().addTo(map);
//... adding data in searchLayer ...
L.map('map', { searchControl: {layer: searchLayer} });
AMD module:
require(["leaflet", "leafletSearch"],function(L, LeafletSearch) {
//... initialize leaflet map and dataLayer ...
map.addControl( new LeafletSearch({
layer: dataLayer
}) );
});
Therefore the deployment require npm installed in your system.
npm install
grunt