Google maps custom overlay click event

I have integrated google maps into an ionic project and have applied a custom overlay to appear above the map marker to display the address of the marker location.

I have applied a click event listener to the map to detect any clicks and then clear and reapply a new marker for the new location. So far so good. I have applied ng-click attribute to the overlay div to then execute some code. This works too. The problem I have is that when clicking the overlay div, ng-click and map click event listener both fire, moving the marker. I want only the div listener to fire but can't seem to achieve this.

Am I missing something simple here?

Please see the following code and this codepen for a working example http://codepen.io/antonfire/pen/LGMqJz

I'm listening on the map like so:

            $scope.map = new google.maps.Map(document.getElementById("map"), mapOptions);


            $scope.map.addListener('click', function(event) {
               placeMarker(event.latLng);
            });

and do not have a listener on the marker div, rather I am using the ng-click attribute:

  <div id="map" data-tap-disabled="true"></div>
  <div id="customMapMarkerDiv" ng-click="choosePassportLocation(chosenPassport)"><i class="icon ion-plane"></i><h5> {{chosenPassport.address}}</h5></div>

Any help would be very much appreciated.

Thanks


The answer to this is to apply css to the marker div to set pointer events to auto .

CSS:

pointer-events: auto;
链接地址: http://www.djcxy.com/p/96196.html

上一篇: JavaScript的

下一篇: Google地图自定义叠加点击事件