2012-07-04 15 views

Respuesta

1

En este enlace se puede obtener muchos ejemplos. https://google-developers.appspot.com/maps/documentation/javascript/examples/

Recientemente trabajé en google maps, y debajo está el código donde puede arrastrar y soltar el marcador, y funciona perfectamente en los navegadores web móviles.

gmap : function(lat,lng){ 
      var stockholm = new google.maps.LatLng(lat, lng); 
      var parliament = new google.maps.LatLng(lat, lng); 
      var marker; 
      var map; 
      function initialize() { 
       var mapOptions = { 
        zoom: 13, 
        disableDefaultUI: true, 
        mapTypeId: google.maps.MapTypeId.ROADMAP, 
        center: stockholm 
       }; 
       map = new google.maps.Map(document.getElementById("gmapDiv"),mapOptions); 
       marker = new google.maps.Marker({ 
        map:map, 
        draggable:true, 
        animation: google.maps.Animation.DROP, 
        position: parliament 
       }); 
       var infowindow = new google.maps.InfoWindow({ 
        content: 'content' 
       }); 
       google.maps.event.addListener(marker, 'click', function(){ 
        infowindow.open(marker.get('map'), marker); 
        }); 
      } 
      initialize(); 
     } 
14

Implementé los eventos táctiles de la misma forma que shreedhar, pero usando el evento "mousedown". Descubrí que el "clic" no se activa en dispositivos móviles cuando se utiliza la API de Google Maps en una vista web (es decir, PhoneGap), pero el evento "mousedown" se desencadena con un toque en el móvil o un clic en la web.

window.infowindow = new google.maps.InfoWindow({ 
    content: 'content' 
}); 

google.maps.event.addListener(marker, 'mousedown', function(){ 
    window.infowindow.open(marker.get('map'), marker); 
}); 

Además, asegúrese de definir una ventana de información única variable en su página, y volver a utilizarlo para todos sus marcadores, por lo tanto, por qué he definido como una ventana de información window.infowindow variable "global".

Cuestiones relacionadas