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();
});
Другие вопросы по тегам