2014-09-03 110 views
0

我有形狀和我繪製在地圖:谷歌地圖:google.maps.event.addListener

shapes; //array of shapes, i draw it from string that i take from db 

    for (var i = shapes.length - 1; i >= 0; i--) { 
     google.maps.event.addListener(shapes[i], 'click', function() { 
      myFunc(shapes[i]); //function to edit shapes[i] 
     }); 
    }; 

當我做到這一點: 1. e.g我有形狀長度= 5; 2.我點擊的形狀,但myFunc的總是我叫1 = 5,以myFunc的隨時撥打形狀[5]

我已經嘗試:Passing a pointer to objects method safely to google.maps.event.addListener

但還是失敗了,有人可以給我建議?

回答

0

形狀; //形狀數組,我從字符串中抽取它,從db獲取

for (var i = shapes.length - 1; i >= 0; i--) { 
(function (i) { 
    google.maps.event.addListener(shapes[i], 'click', function() { 
     myFunc(shapes[i]); //function to edit shapes[i] 
    }); 
})(i); 
};