Skip to content

Instantly share code, notes, and snippets.

@joyrexus
Created January 29, 2014 03:16
Show Gist options
  • Save joyrexus/8681168 to your computer and use it in GitHub Desktop.
Save joyrexus/8681168 to your computer and use it in GitHub Desktop.
Map your current location
<!DOCTYPE html>
<meta charset=utf-8 />
<meta name='viewport' content='width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no' />
<script src='https://api.tiles.mapbox.com/mapbox.js/v1.6.1/mapbox.js'></script>
<link href='https://api.tiles.mapbox.com/mapbox.js/v1.6.1/mapbox.css' rel='stylesheet' />
<style>
body { margin:0; padding:0; }
#map { position:absolute; top:0; bottom:0; width:100%; }
</style>
<div id='map'></div>
<script>
navigator.geolocation.watchPosition(render);
function render(pos) {
var lat = pos.coords.latitude;
var lon = pos.coords.longitude;
var map = L.mapbox.map('map', 'examples.map-20v6611k')
.setView([lat, lon], 8);
L.mapbox.markerLayer({
// this feature is in the GeoJSON format: see geojson.org
// for the full specification
type: 'Feature',
geometry: {
type: 'Point',
// coordinates here are in longitude, latitude order because
// x, y is the standard for GeoJSON and many formats
coordinates: [lon, lat]
},
properties: {
title: 'Current Location',
description: lat.toString() + ', ' + lon.toString(),
// one can customize markers by adding simplestyle properties
// http://mapbox.com/developers/simplestyle/
'marker-size': 'large',
'marker-color': '#f0a',
}
}).addTo(map)
};
</script>
@thomhos
Copy link

thomhos commented Oct 25, 2016

Might want to save the layer of the users location in a var or something so you update it when it moves? Otherwise you'll get multiple markers (layers) and have no reference to remove them.

Cheers!

@supermonteiro
Copy link

Thanks a lot for this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment