我使用google.maps.OverlayView创建了一个CustomMarkar。
我已经在绘图功能中添加了DomListener:
google.maps.event.addDomListener(div, "click", function (event) {
alert("div");
google.maps.event.trigger(self, "click");
});
我已将其添加到floatPane
var panes = this.getPanes();
panes.floatPane.appendChild(div);
当我创建一个新的CustomMarker时,我向它添加了一个DomListener:
let overlay = new CustomMarker(
myLatlng,
this.map,
options
);
google.maps.event.addDomListener(overlay, 'click', function (event) {
alert("overlay");
});
最后,他是地图上的倾听者:
google.maps.event.addListener(this.map, 'click', function (event) {
alert("map");
});
PC浏览器上的一切正常: 首先发出警报(地图),然后发出警报(div)并最终警告(重叠)。
但是在移动设备上只有警报(地图)会闪现......
在移动设备上实现此功能的解决方案是什么?
答案 0 :(得分:0)
使用'touchend'活动
在您的代码中,只需添加触摸开始事件监听器
google.maps.event.addDomListener(overlay, 'touchend', function (event) {
alert("overlay");
});
这对我有用。