使用geoxml3为markerclusterer解析.kml文件:标记不会弹出infowindow

时间:2012-12-04 22:07:59

标签: google-maps-api-3 kml markerclusterer geoxml3

我有一个带有从.kml文件加载的标记的地图,我正在使用geoxml3来解析它,并使用markerclusterer来聚类它们。我添加了一些代码,尝试在用户点击标记时将kml文件中的每个标记上的和标记放在infoWindow上。但是出于某种原因,当我点击标记时,它不会创建infoWindow。我之前添加了一个console.log以确保它识别出了点击,而且它似乎并不想让它产生信息。

您可以在以下位置查看该页面 http://tanagerproductions.com/test/site2/testmap.html

.kml文件位于 http://tanagerproductions.com/test/site2/js/locations.kml

1 个答案:

答案 0 :(得分:1)

看起来您正在使用geoxml3的主干版本。这不再支持了。如果您使用多边形或kmz分支,则它们都受支持。

Here是使用多线分支的页面版本。

这是更新后的createMarker函数:

createMarker:function(placemark){
    var point = placemark.latlng;
    var info = "<pre" + placemark.name + "<br /><br />" + placemark.description + "</pre>";
    var marker = new google.maps.Marker({position:point});

    google.maps.event.addListener(marker, "click", function(){
        infoWindow.setContent(info);
        infoWindow.open(map, marker);
    });
    markerclusterer.addMarker(marker);
}

您可能只需要infoWindow.content = info; =&GT; infoWindow.setContent(INFO);变化

(历史记录,github上不存在“trunk”版本,因此下面的链接不再起作用)
Working version using the trunk geoxml3 version,因此唯一的问题是API不再支持infoWindow.content。