如何动态添加google map infowindow?

时间:2011-09-03 14:03:00

标签: javascript jquery asp.net google-maps

我在这里使用Google地图API在我的网站上显示Google地图。在这里,我可以通过以下代码静态添加谷歌地图:

        var map = new GMap2(document.getElementById('map'));
        map.addControl(new GSmallMapControl());
        map.setCenter(new GLatLng(21.183008, 81.36186199999997), 6);



        var marker = new GMarker(new GLatLng(21.183008, 81.36186199999997), {});
        GEvent.addListener(marker, "mouseover", function () {
            marker.openInfoWindow("Hi ");
        });
        GEvent.addListener(marker, "mouseout", function () {
            map.closeInfoWindow();
        });
        map.addOverlay(marker);           


        var marker1 = new GMarker(new GLatLng(21.25, 81.62), {});
        GEvent.addListener(marker1, "mouseover", function () {
            marker1.openInfoWindow("HI All");
        });
        GEvent.addListener(marker1, "mouseout", function () {
            map.closeInfoWindow();
        });          
        map.addOverlay(marker1);

我在数组中设置了标记值。当我尝试动态创建时,只显示最后一个信息窗口。

等待回应....

1 个答案:

答案 0 :(得分:0)

这与Javascript中的闭包有关,这是一个常见问题。有关解决方案,请参阅Google Maps Javascript API Docs

有关闭包的更多信息,我建议您搜索Stackoverflow(例如评论here);)