我有一个文件,将新南威尔士州的选区边界覆盖在谷歌地图上。每个选民弹出的标记在缩小时确实会干扰地图的视觉效果。我已经找到了如何禁用信息窗口,但无法解决如何一起关闭标记的问题。
地图示例在这里:
http://www.codepress.com.au/nsw_lower_house_map.html
关闭标记后,有没有办法让整个选区多边形可以在JS中使用?
答案 0 :(得分:2)
在将图层添加到地图后,使多边形可点击将事件侦听器绑定到图层
ctaLayer.setMap(map);
google.maps.event.addListener(ctaLayer, 'click', function(kmlEvent) {
var text = kmlEvent.featureData.name;
alert(text);
})
以上将提醒您单击的功能的名称(提供名称以KML设置)。请注意:要使多边形“有用”点击,他们需要设置填充。您的KML文件没有填充,因此唯一可点击的区域将是多边形的边框。您需要设置填充以使此功能有用。
通常,KML要素对象返回以下数据:
{
author: {
email: "nobody@google.com",
name: "Mr Nobody",
uri: "http://example.com"
},
description: "description",
id: "id",
infoWindowHtml: "html",
name: "name",
snippet: "snippet"
}
再次 - 提供这些是在KML中设置
要删除标记,您需要修改KML并删除所有地标及其包含的文件夹,其中没有指定多边形 - 仅限点数据(呈现为标记)。确保在删除后重新验证XML。
这是没有标记http://www.mediafire.com/?f9ewd0c5ymk3ccv的文件。但是,您需要确保您的多边形具有填充集,否则您将只能单击边框。