我用 JavaScript 在 Google map 之上的 Google overlayView 中创建了一些编辑框和按钮。每当我点击任何按钮、editBox 或 overlayView 上的任何地方时,谷歌地图也会接受这些鼠标事件。如何限制鼠标事件,使其无法通过 overlayView 传播?
google.maps.event.addDomListener(gotoBtn, 'click', function(e) {
///DO SOMETHING
e.stopPropagation();
});
对于按钮,我正在使用以下方法,但我不想在所有地方都使用相同的方法。还有其他合乎逻辑的方法吗?
最佳答案
我在 overlayView 中添加了 div 并在那里停止了鼠标传播。
var panes = this.getPanes();
panes.overlayImage.appendChild(div);
/// Code for stoping event propagation to m_map
div.onclick = function(event) {
event.stopPropagation();
}
google.maps.event.addDomListener(div, 'mousedown', function (event) {
event.cancelBubble = true;
if(event.stopPropogation)
event.stopPropagation();
});
关于javascript - 停止 JavaScript 覆盖菜单中的事件传播到 Google map ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46805248/