Skip to content

Instantly share code, notes, and snippets.

@d3noob
Last active December 6, 2019 22:26
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save d3noob/d473c834fca5d7fea98ed9dbe2a401f3 to your computer and use it in GitHub Desktop.
Save d3noob/d473c834fca5d7fea98ed9dbe2a401f3 to your computer and use it in GitHub Desktop.
Overlay example for leaflet.js v1
license: mit

An example of using leaflet.js with multiple tile layers and an overlay.

This graph is part of the code samples for the update to the book Leaflet Tips and Tricks to version 1 of leaflet.js.

<!DOCTYPE html>
<html>
<head>
<title>Simple Leaflet Map</title>
<meta charset="utf-8" />
<link rel="stylesheet" href="https://unpkg.com/leaflet@1.6.0/dist/leaflet.css"
integrity="sha512-xwE/Az9zrjBIphAcBb3F6JVqxf46+CDLwfLMHloNu6KEQCAWi6HcDUbeOfBIptF7tcCzusKFjFw2yuvEpDL9wQ=="
crossorigin=""/></head>
<body>
<div id="map" style="width: 600px; height: 400px"></div>
<script src="https://unpkg.com/leaflet@1.6.0/dist/leaflet.js"
integrity="sha512-gZwIG9x3wUXg2hdXF6+rVkLF/0Vi9U8D2Ntg4Ga5I5BZpVkVxlJWbSQtXPSiUTtC0TjtGOmxa1AJPuV0CPthew=="
crossorigin=""></script>
<script>
var coolPlaces = new L.LayerGroup();
L.marker([-41.29042, 174.78219])
.bindPopup('Te Papa').addTo(coolPlaces),
L.marker([-41.29437, 174.78405])
.bindPopup('Embassy Theatre').addTo(coolPlaces),
L.marker([-41.2895, 174.77803])
.bindPopup('Michael Fowler Centre').addTo(coolPlaces),
L.marker([-41.28313, 174.77736])
.bindPopup('Leuven Belgin Beer Cafe').addTo(coolPlaces),
L.polyline([
[-41.28313, 174.77736],
[-41.2895, 174.77803],
[-41.29042, 174.78219],
[-41.29437, 174.78405]
]
).addTo(coolPlaces);
var osmLink = '<a href="http://openstreetmap.org">OpenStreetMap</a>',
otmLink = '<a href="http://opentopomap.org/">OpenTopoMap</a>';
var osmUrl = 'http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png',
osmAttrib = '&copy; ' + osmLink + ' Contributors',
otmUrl = 'http://{s}.tile.opentopomap.org/{z}/{x}/{y}.png',
otmAttrib = '&copy; '+otmLink+' Contributors';
var osmMap = L.tileLayer(osmUrl, {attribution: osmAttrib}),
otmMap = L.tileLayer(otmUrl, {attribution: otmAttrib});
var map = L.map('map', {
layers: [osmMap] }) // only add one!
.setView([-41.2858, 174.78682], 14);
var baseLayers = {
"OSM Mapnik": osmMap,
"Topogrophy": otmMap
};
var overlays = {
"Interesting places": coolPlaces
};
L.control.layers(baseLayers,overlays).addTo(map);
</script>
</body>
</html>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment