Google maps 谷歌地图多个标记信息窗口从外部链接打开

Google maps 谷歌地图多个标记信息窗口从外部链接打开,google-maps,google-maps-markers,marker,Google Maps,Google Maps Markers,Marker,创建了一个谷歌标记地图,并在地图旁边列出了位置名称——工作正常 目标- 单击列出的每个位置的名称时,如何打开相应的信息窗口 代码 var标记=[ [Bondi Beach',-33.890542151.274856], [Coogee Beach',-33.923036151.259052], ['Cronulla Beach',-34.028249151.157507], [‘曼利海滩’,-33.80010128657071151.28747820854187], [‘马鲁布拉海滩’,-33

创建了一个谷歌标记地图,并在地图旁边列出了位置名称——工作正常

目标- 单击列出的每个位置的名称时,如何打开相应的信息窗口

代码

var标记=[
[Bondi Beach',-33.890542151.274856],
[Coogee Beach',-33.923036151.259052],
['Cronulla Beach',-34.028249151.157507],
[‘曼利海滩’,-33.80010128657071151.28747820854187],
[‘马鲁布拉海滩’,-33.950198151.259302]
];
函数初始化映射(){
变量myOptions={
mapTypeId:google.maps.mapTypeId.ROADMAP,
mapTypeControl:false
};
var map=new google.maps.map(document.getElementById(“map_canvas”),myOptions);
var infowindow=new google.maps.infowindow();
var标记,i;
var bounds=new google.maps.LatLngBounds();
对于(i=0;i
在创建标记的循环中,也会创建链接并附加一个触发标记单击的单击侦听器:

(function(marker){
            google.maps.event
              .addDomListener($('<li/>')
                              .text(markers[i][0])
                               .appendTo('#list')[0],
                              'click',
                               function(){
                                google.maps.event.trigger(marker,'click',{});
                               });
 })(marker);
(功能(标记器){
google.maps.event
.addDomListener($(“
  • ”) .text(标记[i][0]) .appendTo(“#list”)[0], “点击”, 函数(){ google.maps.event.trigger(标记,'click',{}); }); })(标记);

  • 演示:

    我期待这个,但是我们可以不使用'li'附加来完成这个操作吗[我需要将'li'保留在html中]-非常感谢您的帮助您可以存储一个属性(例如ID或索引),使您能够访问标记数组中的正确链接。当索引相等(目前是)时,您可以直接在循环中使用
    i
    :是的,谢谢,请编辑您的第一个答案,我放弃了投票
    (function(marker){
                google.maps.event
                  .addDomListener($('<li/>')
                                  .text(markers[i][0])
                                   .appendTo('#list')[0],
                                  'click',
                                   function(){
                                    google.maps.event.trigger(marker,'click',{});
                                   });
     })(marker);