2011-01-10 124 views
0

我有一个文件,将新南威尔士州的选举边界状态覆盖到Google地图上。在缩小时,每个选区上弹出的标记确实会干扰地图的视觉效果。我发现如何禁用信息窗口,但无法解决如何将标记关闭在一起。在谷歌地图中定制KML图层的问题

地图例子是在这里:

http://www.codepress.com.au/nsw_lower_house_map.html

带标记的关闭,是有那么一种方法,使整个选民多边形可点击的JS一起工作呢?

回答

2

为了使多边形点击添加层后,在地图

ctaLayer.setMap(map); 
       google.maps.event.addListener(ctaLayer, 'click', function(kmlEvent) { 
        var text = kmlEvent.featureData.name; 
        alert(text); 
       }) 

以上会提醒你在点击(提供名称设置在KML的功能名称的事件监听器绑定到层)。请注意:多边形要“有用”点击,他们需要设置填充。您的KML文件没有填充,因此唯一可以点击的区域就是多边形的边框。您需要设置填充以使此功能有用。

一般KML要素对象返回以下数据:

{ 
    author: { 
    email: "[email protected]", 
    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。但是,您需要确保您的多边形已填充,否则您只能点击边框。

+0

Michal。非常感谢您的全面回答,并为删除标记提供文件。我非常欣赏这一努力。这是完美的解决方案! – Darren 2011-01-11 07:30:14