RichMarker для Google Maps v3 - клик падает через маркер
Я использую RichMarker для Карт Google v3, как указано на https://googlemaps.github.io/js-rich-marker/reference.html
Я успешно смог зарегистрироваться нажав на маркер с этим кодом:
google.maps.event.addListener(this.richMarker, 'click', function(event) {
console.log("click made on marker");
});
Однако щелчок также падает через маркер, поэтому он регистрирует щелчок по тому, что позади него. т.е. карта, если у нее есть обработчик:
google.maps.event.addListener(map, 'click', function(event) {
console.log("click made on map");
});
Или многоугольник, если он кликабелен.
Как я могу предотвратить это падение с помощью RichMarker?
Спасибо
2 ответа
Решение
Вам нужно будет изменить библиотеку.
Найдите эту часть:
google.maps.event.addDomListener(this.markerContent_, 'click', function(e) {
google.maps.event.trigger(that, 'click');
});
и изменить его на
google.maps.event.addDomListener(this.markerContent_, 'click', function(e) {
e.stopPropagation();
google.maps.event.trigger(that, 'click');
});
google.maps.event.addListener(richMarker, 'click', function(event)
{
// your stuff here
event.preventDefault();
event.stopPropagation();
event.preventDefault();
});