Geolocalización

Por 9.99€ al mes tendrás acceso completo a todos los cursos. Sin matrícula ni permanencia.

<script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?sensor=false"></script>
<link rel="stylesheet" type="text/css" href="http://code.google.com/apis/maps/documentation/javascript/examples/default.css">
<script type="text/javascript">
/*
-PhoneGap Documentation: The Android 2.x simulators will not return a geolocation result unless the enableHighAccuracy option is set to true.
- Para que se ejecute deviceReady, será necesario ejecutar la aplicación en Ripple, en el emulador, o en móvil; no basta sólo con ejecutar en un navegador, aunque sea a través de localhost.
- Si ejecutamos en el emulador es probable que sea necesario mandar las coordenadas de nuestra ubicación para que funcione la geolocalización (En eclipse: Window → show view → Emulator Control Location Controls → Manual → Send)
*/
document.addEventListener("deviceReady", deviceReady, false);
function deviceReady(){
	navigator.geolocation.getCurrentPosition(onGeoSuccess, onGeoError, { enableHighAccuracy: true });
}

function onGeoSuccess(position){
	var lat = position.coords.latitude;
	var lon = position.coords.longitude;
	var currentPosition = new google.maps.LatLng(lat, lon);
	var mapoptions = {
		zoom : 12,
		center: currentPosition,
		mapTypeId: google.maps.MapTypeId.ROADMAP
	};
	var map = new google.maps.Map(document.getElementById("map"), mapoptions);
	var marker = new google.maps.Marker({
		position: currentPosition,
		map: map
	});
}
function onGeoError(error){
	if(error==1){
		alert("turn on geolocation services")
	}else{
		alert("geoError: " + error);
		alert("geoError: " + error.message);
	}
}
Ver ejemplo

Por 9.99€ al mes tendrás acceso completo a todos los cursos. Sin matrícula ni permanencia.