有一个 Polygoncomplete 事件被触发,但我正在寻找一个 Polygonstart 事件。即使是overlaystart 事件也适合我。
当用户开始绘制多边形时,我想删除地图上任何现有的多边形。目前,我使用 Polygoncomplete 事件实现了该功能。但它需要在一开始就发生。
我的伪代码想法是......
- 监听地图上的点击事件。
- onclick,检查选择了哪个绘图工具(如果可能的话)。
- 如果选择了多边形工具,则删除所有先前的多边形。
如果使用 Polygonstart 事件,这会容易得多。
这是一个类似的问题,但隐藏和显示绘图控件不是此用户界面的选项。Google 地图绘图管理器限制为 1 个多边形 https://stackoverflow.com/questions/14166546/google-maps-drawing-manager-limit-to-1-polygon
今天我正在努力解决在 Google 地图画布上监听点击的问题,我可能发现了一个使用 jQuery 的丑陋的黑客/解决方法:
setTimeout( function() {
var gmDomHackSelect = $('.gm-style').children().eq(0);
gmDomHackSelect.click(handleMapCanvasClick);
}, 3000);
这段代码来自我的地图初始化函数,因此我需要一个计时器来稍后选择元素。
这个监听器的优点是它直接监听画布上的点击,即。单击地图控件(例如缩放)不会触发它。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)