2015-03-22 2 views
0

Этот код отлично работает во всех браузерах, кроме браузера Firefox. Событие клика не работает.События, которые не запускаются в firefox (Карты Google)

var marker = new RichMarker({ 
     position: new google.maps.LatLng(_latitude, _longitude), 
     map: map, 
     draggable: draggableMarker, 
     content: markerContent, 
     flat: true 
    }); 

google.maps.event.addListener(marker, "click", function(event) { 

    alert(this.position); 

}); 

Как я могу это исправить? Спасибо.

ответ

2

Проблема, кажется, линия 615 http://googlemaps.github.io/js-rich-marker/src/richmarker.js

this.markerWrapper_.setCapture(true); 

При добавлении CLICK-слушателю маркера внутри клик-событие будет срабатывать при нажатии на содержание маркера. В приведенной выше строке событие click-event будет запускаться только для обертки содержимого (происходит, когда маркер перетаскивается).

Вам нужно изменить функцию addDraggingListeners_, установите его:

RichMarker.prototype.addDraggingListeners_ = function() { 
    var that = this; 
    this.draggingListeners_ = [ 
     google.maps.event.addDomListener(window, 'mousemove', function(e) { 
     that.drag(e); 
     }, true), 
     google.maps.event.addDomListener(window, 'mouseup', function() { 
     that.stopDrag(); 
     }, true) 
    ]; 
}; 
+0

О, большое спасибо у! это работает! –

+0

Спасибо! Это было очень полезно! –

Смежные вопросы