Я пытаюсь создать интерактивную карту, используя leaflet и topojson слой. Я хочу сделать следующее:Извлечение удаленных полигонов TOPOJSON при нажатии на новый
1- Когда один щелчок на определенном многоугольнике topojson, он должен удалить.
2- Когда один клик на другом многоугольнике, он должен удаляться, а ранее щелкнутый многоугольник должен быть добавлен обратно.
Таким образом, в любой момент может отсутствовать только один многоугольник, отсутствующий при макс. Вот код блока для карты:
function addRegions(map) {
var regionLayer = new L.TopoJSON();
$.getJSON('map-developmentregions.topo.json').done(addRegionData);
function addRegionData(topoData){
regionLayer.addData(topoData);
regionLayer.addTo(map);
regionLayer.eachLayer(handleLayer);
}
function handleLayer(layer) {
layer.setStyle({
fillColor : getColor(getNewsCount(layer.feature.properties.REGION)),
weight: 2,
opacity: 1,
color: 'white',
fillOpacity: 1
});
layer.on({
mouseover : enterLayer,
mouseout: leaveLayer,
click: clickAction
});
}
//Here's the code for clickAction... this is where I suppose the code should be placed
function clickAction(e) {
var layer = e.target;
map.removeLayer(layer);
}
}
До сих пор этот код позволяет мне нажать на topojson многоугольник, чтобы удалить его, но я не могу думать о том, как получить удаленные ранее многоугольник, когда другой полигон щелкнул.
Я думаю, что я должен сравнить каждый многоугольник с общим количеством полигонов и добавить отсутствующий многоугольник, прежде чем удалять полигональный щелчок, но я не могу его выполнить.
Пожалуйста, помогите. Благодаря
это сработало! спасибо тонну – jimmypage
Приветственный брат :) – muzaffar