2013-05-10 1 views
0

나는 jquery-ui-map을 사용하여 여러 마커를지도에 추가하는 프로젝트를 진행 중입니다. 각 마커에는 다른 텍스트가있는 정보창이 있습니다. 그러나 배열을 반복하여 추가하면 동일한 정보가 모든 정보 창에 표시됩니다. 아무도 나를 도와 줄래? 나는 이걸로 내 머리카락을 끌어왔다.jquery-ui-map을 사용하여 다른 텍스트가있는 정보 창을 여러 마커 추가하기

$('#AroundMePage #map_canvas').gmap({'center': '-37.816945,144.953573', 'zoom': 12}); 

for (var i = 0, len = workOderLocalArray.length; i < len; ++i) { 
     var workOrder =workOderLocalArray[i]; 

     var address = workOrder.PropertyAddress; 
     var coordinates = workOrder.PropertyCoordinates; 

     $('#AroundMePage #map_canvas').gmap('addMarker', { 'position':coordinates }).click(function() { 
      $('#AroundMePage #map_canvas').gmap('openInfoWindow', { 'content': coordinates }, this); 
      }); 
    } 

답변

0

나는 이것을 알아 냈습니다. 나는 폐쇄 문제가있는 것 같습니다. 하지만 모든 답변/수정은 JQuery-ui-map API가 아니라 정말 긴 솔루션/코드 인 native javascript googl maps api를 사용하여이 문제를 해결하는 방법을 보여주었습니다. 이것은 future.Cheers ;-)에서 사람에게 희망이 될 것입니다

//Function Retuning the Info window click event function 
    function makeInfoWindowEvent(address) { 
     return function() { 
        $('#AroundMePage #map_canvas').gmap('openInfoWindow', { 'content': address }, this); 
      }; 
    } 

var workOderLocalArray = workOrdersObject.workOrderArr; 


    for (var i = 0, len = workOderLocalArray.length; i < len; ++i) { 
     var workOrder =workOderLocalArray[i]; 

     var address = workOrder.PropertyAddress; 
     var coordinates = workOrder.PropertyCoordinates; 

     $('#AroundMePage #map_canvas').gmap('addMarker', { 'position':coordinates }).click(makeInfoWindowEvent(address)); 
    } 

희망 :

다음은 내 마지막 코드입니다.

관련 문제