# Geolocalizzazione semplice morta

<datetime class="hidden">2010-02-28T00:00</datetime>

<!-- category -- mostlylucidcouk, Imported -->
Stavo scherzando con questa roba ultimamente, [@TheCodeJunkie](http://www.twitter.com/TheCodeJunkie) richiesto così qui è un modo davvero semplice per ottenere una posizione e mostrare una mappa:). Questa versione utilizza il [API di geolocalizzazione W3C](http://dev.w3.org/geo/api/spec-source.html) sui browser che lo supportano (FireFox 3.5, Safari, iPhone, Opera) e rientra a utilizzare [Google Gears](http://code.google.com/apis/gears/api_geolocation.html) su altri browser (compreso IE).

Solo un campione davvero stupido in questo momento, ma chissà, qualcuno potrebbe trovarlo utile! I

```
<!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>
```