Добрый день, уважаемые форумчане!
Возникла проблема с библиотекой Leaflet-js а именно, есть такая переменная:
var AllLayers = {
"Локации":locations,
"Сокровища":treasures,
};
По идее, можно в дочерние разделы переменной получить доступ таким образом:
Alllayers.Локации
Но вот вопрос, в DOM - я получаю через другую переменную название совпадающее с ключом дочернего элемента объекта Alllayers
Хотел спросить как мне проверять его на соответствие для вывода слоев на карту Leaflet через другую переменную? Сейчас все это выглядит примерно так:
$("body").on('DOMSubtreeModified', ".filter-option.pull-left", function() {
// Значение может совпадать с ключом дочернего элемента в AllLayers
var domval = $(this).text();
if(domval === 'Показать все маркеры') {
$.each(AllLayers, function(i) {
AllLayers[i].addTo(map);
});
} else if(domval === 'Скрыть все маркеры') {
$.each(AllLayers, function(i) {
map.removeLayer(AllLayers[i]);
});
} else {
if(map.hasLayer(AllLayers.hasOwnProperty(domval))) {
map.removeLayer(AllLayers[i]);
} else {
AllLayers[i].addTo(map);
}
}
});