この回答を読みましたが、コードを機能させることにまだ頭痛の種があります。
少し異なるニーズがあります。警告する代わりに、各オブジェクトをバインドする必要があります。私のコードは次のとおりです。
for (var i = 0; i < markers_length; i++) {
events_number = data.markers[i].events_number //data.markers is a multidimentional array
marker = L.marker([ data.markers[i].latitude , data.markers[i].longitude ]); //just create the new object
marker.on('mouseover', function(){
return function(){
this.bindPopup(" Found"+events_number+" event(s)").openPopup();
}
}(i) );
}
頼めばリーフレットを使っています。単一のオブジェクトの場合、bindPopup は次のように機能します。
marker.on('mouseover', this.bindPopup('hi').openPopup());
問題は、上記のコードがすべてのオブジェクトの最後のオブジェクトを与えることです。this
と機能のレベルに問題があると思います。では、各マーカーを個別のテキストにバインドするにはどうすればよいでしょうか?