谷歌地图API v3多标记与标签/文本

时间:2014-08-20 06:48:24

标签: javascript google-maps google-maps-api-3 google-maps-markers

我找到了在谷歌地图标记上放置标签/文字的解决方案。您可以在此链接中找到http://google-maps-utility-library-v3.googlecode.com/svn/tags/markerwithlabel/1.1.8/docs/reference.html

我的问题是标记放在一个地方。但每个标记上的标签/文本放在正确的点上。任何人都可以帮助我吗?

下面的代码位于$ .each()jQuery函数中,用于循环。

geocoder.geocode( { 'address': address }, function(results, status) {
    if (status == google.maps.GeocoderStatus.OK) {
        var contentString = "sample text";

        var infowindow = new google.maps.InfoWindow({
            content: contentString;
        });

        var marker = new MarkerWithLabel({
            position: results[0].geometry.location,
            map: map,
            animation: google.maps.Animation.DROP,
            title: address,
            labelContent: lblAddress,
            labelAnchor: new google.maps.Point(7, 30),
            labelClass: "map-labels", // the CSS class for the marker
        });

        google.maps.event.addListener(marker, 'click', function() {
            infowindow.open(map, this);
        });
}

enter image description here

上图显示了两个不同点的标记显示在一个地方。我很确定,因为当我点击标签" 18107 Gold Mesa" infowindow将打开,但infowindow将显示在" 3611 Alonzo Fields"。这一点上有两个标记。

但是当我没有使用第三方图书馆时。标记放在正确的点上。使用谷歌地图方法放置标记。 new google.maps.Marker

谢谢, 贾斯汀

1 个答案:

答案 0 :(得分:0)

使用infowindow.open(map,marker);

而不是

infowindow.open(map,this);

我想这会在标签附近显示你的弹出窗口,你可能会发现标记没有出现的一些重要原因