我的应用程序允许用户搜索场地并在谷歌地图上绘制这些结果。
我想要做的是当用户将鼠标悬停在结果列表中的某个项目时,它会打开相应的标记信息窗口。当我添加标记时,我将其记录到标记名称。所以我的所有标记都叫做marker_xx,其中xx是记录ID。
我可以使用以下代码与标记进行交互并发送一个点击:
google.maps.event.trigger(marker_40, "click");
但如果我尝试使用以下两行动态生成名称,则无效
var name = "marker_" + markerIdentifier;
google.maps.event.trigger(name, "click");
所以我想我需要让实际的'marker_object'发送到google功能。但我不知道该怎么做。
这里是我的函数,完整的markerIdentifier是一个id,它匹配结果列表中的记录,并且地图上会有一个匹配的标记。
function MarkerZoomTo(markerIdentifier) {
var name = "marker_" + markerIdentifier;
google.maps.event.trigger(name, "click");
google.maps.event.trigger(marker_40, "click");
}
任何提示都会感激不尽。
由于
答案 0 :(得分:0)
从代码的外观看,全局命名空间中存在marker_40
。
话虽如此,您应该可以使用
访问它var marker = window['marker_' + markerIdentifier];
但是,我建议您将标记保存在数组中,然后从中获取所需的标记。