Skip to content

Instantly share code, notes, and snippets.

@geografa
Last active January 4, 2016 12:39
Show Gist options
  • Save geografa/8623019 to your computer and use it in GitHub Desktop.
Save geografa/8623019 to your computer and use it in GitHub Desktop.
Exclusive Layer Control with Mapbox.js 1.6.1
<!DOCTYPE html>
<html>
<head>
<meta charset=utf-8 />
<title></title>
<script src='http://api.tiles.mapbox.com/mapbox.js/v1.6.1/mapbox.js'></script>
<link href='http://api.tiles.mapbox.com/mapbox.js/v1.6.1/mapbox.css' rel='stylesheet' />
<!--[if lte IE 8]>
<link href='//api.tiles.mapbox.com/mapbox.js/v1.6.1/mapbox.ie.css' rel='stylesheet'>
<![endif]-->
<style>
body { margin:0; padding:0; }
#map { position:absolute; top:0; bottom:0; width:100%; }
</style>
</head>
<body>
<div id='map'></div>
<script type='text/javascript'>
// declare overlay layer groups
var neighborhoods = new L.LayerGroup(),
garbage = new L.LayerGroup(),
anno = new L.LayerGroup();
// declare tilelayers
var nboLayer = L.mapbox.tileLayer('grafa.nbohoods').addTo(neighborhoods),
garbLayer = L.mapbox.tileLayer('grafa.garbage').addTo(garbage),
annoLayer = L.mapbox.tileLayer('grafa.kpqa1yvi').addTo(anno);
// declare your map and settings
var map = L.mapbox.map('map', 'grafa.sk54gqfr')
.setView([45.52245801087795, -122.67773866653444], 14);
// declare gridlayer that correspond to tilelayers above
var nboGridLayer = L.mapbox.gridLayer('grafa.nbohoods').addTo(neighborhoods),
garbageGridLayer = L.mapbox.gridLayer('grafa.garbage').addTo(garbage);
// add the gridControl for the gridLayers
map.addControl(L.mapbox.gridControl(garbageGridLayer, {follow: true}));
// create the baselayers and overlays for the layer control
// var baseLayers = {
// };
var overlays = {
"Labels": anno,
"Neighborhoods": neighborhoods,
"Garbage Haulers": garbage
};
// add the layer control
L.control.layers(null, overlays).addTo(map);
</script>
</body>
</html>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment