Google Maps Api添加标签
问题描述:
我使用以下函数从XML文件创建我的标记。我希望为每个市场1,2,3,4,5,6等标签,其中'我'是数字。可以请一些请告诉我如何纳入这一点。谢谢Google Maps Api添加标签
function createMarker(point, name, address, type, i) {
var marker = new GMarker(point, customIcons[type]);
var html = "<b>" + name + "</b> <br/>" + address;
GEvent.addListener(marker, 'click', function() {
marker.openInfoWindowHtml(html);
});
return marker;
}
答
您可以使用谷歌的图表服务器来创建动态图标,并将其设置为您的标记图像。使用动态图标
图表服务器文档:http://code.google.com/apis/chart/docs/gallery/dynamic_icons.html
例如, http://chart.apis.google.com/chart?chst=d_map_pin_letter&chld=1|FF0000|000000将呈现为
和http://chart.apis.google.com/chart?chst=d_map_pin_letter&chld=2|FF0000|000000将让你
答
你可以使自己的标记图标,并执行他们到您的地图上,请参阅here (如果您尚未使用,最好使用当前的Google Maps API v3)
做这样的事情:
function createMarker(point, name, address, i) {
var image = "icon" + i + ".png";
var html = "<b>" + name + "</b> <br/>" + address;
var marker = new google.maps.Marker({
position: point,
map: map,
icon: image,
title: name
});
addinfowindow(marker, html);
return marker;
}
(您做了一个图标,每个称为icon1.png到icon6.png标记,并放置在目录)
还为您可能需要多个信息窗口用全局定义的infowindow创建新的全局函数addinfowindow()(请参见here)。
function addwindow(pmarker, phtml){
google.maps.event.addListener(pmarker, 'click', function() {
infowindow.setContent(phtml);
infowindow.open(map, pmarker);
});
}