【发布时间】:2014-02-11 22:11:20
【问题描述】:
所以有很多关于如何删除谷歌地图多边形顶点的帖子。他们都没有为我工作 - 这可能是由于他们引用过时的 API。我试图限制用户可以在多边形上创建的点数。如果他们创建了超过一定数量的点,我想以编程方式触发谷歌地图内置的“撤消”功能,或者通过某种方式删除最后创建的顶点。
当我为用户创建初始多边形时,我将这个事件监听器添加到:
google.maps.event.addListener(myPolygon.getPath(), 'insert_at', function(event){
var numPoints = myPolygon.getPath().length;
if(numPoints == 5){
myPolygon.getPath().removeAt(4);
}
});
这最终会从多边形中删除一个点(不一定是最后创建的点)。有时会导致以下错误:
未捕获的类型错误:无法读取未定义的属性“b”。
我尝试在多边形上使用“点击”侦听器,但是当用户创建新顶点时点击事件不会触发。它仅在单击实际的多边形形状时触发。
【问题讨论】:
标签: javascript google-maps google-maps-api-3