看板 Web_Design 關於我們 聯絡資訊
大家好, 小弟我在使用google api v3的infowindow遇到一點問題 marker點有多個, 每一個marker點我都搭配了一個infowindow要顯示該地點的資訊 但是實際呈現出來的卻全部是最後一個market的infowindow資訊 以下是我的程式碼 /* * waypoints是一串包含地點名稱/地點地址的字串 * 不同的地點使用,分隔,所以使用的時候我用split切了兩次得到地址 * 再用地址得到坐標去設定market,配對infowindow後丟進waypts中作後續處理 */ ------------------------------------------------------------------------- waypoints = data; if (waypoints){ var arrPoint = waypoints.split(","); //經過地點 for (var i = 0; i < arrPoint.length; i++) { address = arrPoint[i].split("/"); $.get("http://maps.googleapis.com/maps/api/geocode/json",{address: address[1],sensor:true},function(data){ marker[i] = new google.maps.Marker({ map: map, draggable: false, position: new google.maps.LatLng(data["results"][0] ["geometry"]["location"]["lat"], data["results"][0] ["geometry"] ["location"]["lng"]), title:"'"+data["results"][0]["formatted_address"]+"'" }); infowindow[i] = new google.maps.InfoWindow(); infowindow[i].setContent("設定資訊視窗內容"+i); google.maps.event.addListener(marker[i], 'click', function() { infowindow[i].open(map,this); }); waypts.push(marker[i]); }) } } ---------------------------------------------------------------------------- market跟infowindow我都有宣告為陣列使用i作索引,理論上監聽事件應該不會重疊,但 所有的infowindows的內容還是跟最後一個點的infowindow內容相同,還麻煩知道哪裡出 了問題的前輩能指點一下...先謝謝各位了 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.35.104.91