Código HTML:
Ver original
<!DOCTYPE html> <html> <head> <script type="application/javascript"> function localizar(){ navigator.geolocation.getCurrentPosition(mapa,error); } function mapa(pos){ /* --- Contenedor --- */ var contenedor = document.getElementById('mapa'); /* --- Latitud y longitud --- */ var latitud = pos.coords.latitude; var longitud = pos.coords.longitude; /* --- Definimos el centro del mapa --- */ var centro = new google.maps.LatLng(latitud,longitud); /* --- Propiedades del mapa --- */ var propiedades = { center: centro, mapTypeId: google.maps.MapTypeId.ROADMAP, zoom:16, }; /* --- Creando el mapa --- */ var map = new google.maps.Map(contenedor,propiedades); /* --- Crea un Marcador --- */ google.maps.event.addListener(map, 'click', function(event){ placeMarker(event.latLng); }); function placeMarker(posicion) { /* --- Marcador --- */ var marker = new google.maps.Marker({ /* --- Indica posicion --- */ position: posicion, /* --- Indica que se puede mover --- */ draggable: true, /* --- Mapa en donde se ubica --- */ map: map, /* --- Titulo --- */ title:"aqui el evento!" }); return false; } } function error(erroC){ if(errorC.code == 0){ alert("Error desconocido"); } else if(errorC == 1){ alert("No me dejaste Ubicarte : ("); } else if(errorC == 2){ alert("Posicion no disponible"); } else if(errorC == 2){ alert("Me rendi"); } } </script> </head> <body onLoad="localizar();"> </body> </html>
La funcion que quiero que se realize solo una vez es la de crear un marcador,
Código Javascript:
Como veran lo intente con return false; pero no funca, quiero aclarar que aprendo de mis errores me gustaria que me hagan notar que estoy haciendo mal. Ver original
function placeMarker(posicion) { /* --- Marcador --- */ var marker = new google.maps.Marker({ /* --- Indica posicion --- */ position: posicion, /* --- Indica que se puede mover --- */ draggable: true, /* --- Mapa en donde se ubica --- */ map: map, /* --- Titulo --- */ title:"aqui el evento!" }); return false; }