如何动态添加谷歌地图信息窗口?
Posted
技术标签:
【中文标题】如何动态添加谷歌地图信息窗口?【英文标题】:How to add google map infowindow dynamically? 【发布时间】:2011-11-09 18:00:40 【问题描述】:在这里,我使用 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);
我在数组中有一组标记值。当我尝试动态创建时,只显示最后一个信息窗口。
等待回复……
【问题讨论】:
这听起来像是一个闭包问题,但是你的数组在哪里(以及预期的for
-loop)?
这段代码来自之前版本的google maps api。 v3 已经上线很长一段时间了:code.google.com/apis/maps/documentation/javascript/basics.html 该页面上有很好的示例。
你能设置一个jsfiddle吗..我不确定我需要使用什么谷歌地图api
【参考方案1】:
这与 Javascript 中的闭包有关,这是一个常见问题。请参阅Google Maps Javascript API Docs 以获取解决方案。
有关闭包的更多信息,我建议您在 *** 上进行搜索(例如评论 here);)
【讨论】:
以上是关于如何动态添加谷歌地图信息窗口?的主要内容,如果未能解决你的问题,请参考以下文章
无法单击标记 - 谷歌地图集群Android,无法在谷歌地图中显示信息窗口
删除谷歌地图中的自定义信息窗口后如何取消选择 GMSMarker