我已将谷歌地图集成到离子项目中,并已应用自定义叠加层显示在地图标记上方,以显示标记位置的地址。
我已将点击事件监听器应用于地图以检测任何点击,然后清除并重新应用新位置的新标记。到现在为止还挺好。我已将ng-click属性应用于overlay div,然后执行一些代码。这也有效。我遇到的问题是,当点击叠加div时,ng-click和map click事件监听器都会触发,移动标记。我只想让div听众解雇,但似乎无法实现这一目标。
我在这里错过了一些简单的东西吗?
请参阅以下代码和此codepen以获取工作示例http://codepen.io/antonfire/pen/LGMqJz
我正在这样听地图:
$scope.map = new google.maps.Map(document.getElementById("map"), mapOptions);
$scope.map.addListener('click', function(event) {
placeMarker(event.latLng);
});
并且标记div上没有侦听器,而是使用ng-click属性:
<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>
非常感谢任何帮助。
由于
答案 0 :(得分:0)
答案是将css应用于标记div以将指针事件设置为auto
。
CSS:
pointer-events: auto;