Messing around with this stuff of late, @TheCodeJunkie requested it so here’s a really simple way to get a location and show a map :). This version uses the W3C Geolocation API on browsers that support it (FireFox 3.5, Safari, iPhone, Opera) and falls back to using Google Gears on other browsers (including IE).
Just a really dumb sample right now but who knows, someone might find it useful! I’ll update later with some of the more advanced stuff I’m working on in this area…
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script type="text/javascript" src="http://ecn.dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=6.2"></script>
<script src="Scripts/gears_init.js" type="text/javascript"></script>
<script type="text/javascript">
function SetLocation() {
if (typeof (navigator.geolocation) != "undefined") {
geo = navigator.geolocation;
positionOptions = { maximumAge: 600000 };
}
else {
if (!window.google || !google.gears) {
returnUrl = this.location.href;
location.href = "http://gears.google.com/?action=install&message=Gears now enabled!" +
"&return=" + returnUrl;
}
geo = google.gears.factory.create('beta.geolocation');
positionOptions = {enableHighAccuracy:true, maximumAge: 600000};
}
geo.getCurrentPosition(GetMap, handleError,positionOptions);
}
function GetMap(position) {
latitude = position.coords.latitude;
longitude = position.coords.longitude;
map = new VEMap('myMap');
map.HideDashboard();
map.LoadMap(new VELatLong(latitude, longitude), 15, 'h', false);
var shape = new VEShape(VEShapeType.Pushpin, map.GetCenter()); shape.SetTitle('You are here!'); map.AddShape(shape);
}
function handleError(positionError) {
alert('Attempt to get location failed: ' + positionError.message);
}
</script>
</head>
<body onload="SetLocation();">
<div id='myMap' style="position: relative; width: 1000px; height: 1000px;">
</div>
</body>
</html>
© 2025 Scott Galloway — Unlicense — All content and source code on this site is free to use, copy, modify, and sell.