使用Google地图绘图库隐藏多边形

时间:2014-04-23 17:58:01

标签: javascript google-maps

我似乎无法隐藏使用Google地图绘图库绘制的多边形。以下是我用作隐藏功能的内容:

function hideRectangles() {
  if (rectangles.length > 0) {
    for (var i = 0; i < rectangles.length; i++) {
      rectangles[i].setMap(null);
    }
  }
}

请参阅此处的完整示例:http://jsbin.com/wobapopu/2/edit

2 个答案:

答案 0 :(得分:1)

您永远不会更新rectangles数组(即向其添加矩形),因此hideRectangles()不执行任何操作。在函数draw/hideRectangles()

之外添加这些行
google.maps.event.addListener(drawingManager, 'rectanglecomplete', function(rectangle) {
  rectangles.push(rectangle);
});

Click here for Updated example

答案 1 :(得分:1)

您并未将实际的叠加层对象推送到rectangles数组,因此无法将其从地图中删除。

相反,你应该这样做:

rectangles.push(e.overlay);

然后它会起作用。工作示例here