Sorunumu çözmeye çalıştığım günler oldu.Leaflet ile bir defada sadece bir özellik/çokgenin nasıl düzenlenmesine izin verilir?
GeoJSON'dan çokgen katmanım var. Çokgenlerimi tıklama etkinliği ile düzenlemek istiyorum. Çokgen üzerine tıkladığımda düzenlenebilir hale gelir, ancak istediğim başka bir çokgeni tıkladığımda, ilk çokgenin artık düzenlenebilir modda olmamasıdır.
OpenLayers ancak doğal olarak Leaflet değil.
var editableLayers = new L.FeatureGroup().addTo(map);
var polygon_json;
$.ajax({
type: "GET",
dataType: "json",
url: "get_json.php",
success: function (response) {
meaux_json = L.geoJson(response, {
onEachFeature: onEachFeature
});
}
});
//edit the targeted polygon
function onEachFeature (feature, layer) {
editableLayers.addLayer(layer);
layer.on('click', function(e){
e.target.editing.enable();
});
}
Bir kişi bunu başardı ama nasıl anlamakta zorluk yaşıyorum:
İşte benim kodundan bir alıntı sana yakın olduğunu düşünüyorum https://github.com/dwilhelm89/Ethermap
Demoda çokgen/çizgi çizgilerini tıklattığımda, düzenlenebilir hale gelir. Sonra, demonuzda başka bir poli'yi tıklattığımda, ilk üzerinde düzenleme devre dışı bırakılır ve 2. çokgen düzenleme için etkinleştirilir. Şu an istediğin gibi çalışıyor gibi görünüyor. –
cevabınız için teşekkürler, ama bu benim demom değil, bunu bana yapan başka bir kişi ^^, ve nasıl olduğunu bilmiyorum. – Revocyl
Hey. Tüm kodunuzu (broşür çizim kontrolleri dahil) gönderir misiniz? Ben benzer bir şey yapmaya çalışıyorum ama şaşırdım. – user1919