Я построил приложение листовки и импортировал форму Shape для определения различных мест. Затем у меня есть список определенных регионов с левой стороны, и на каждом регионе есть несколько значков, которые на них нажимают. Один из тех значек, которые я хочу, чтобы пользователь мог нажать на него, и он скрывает цвет выбранных регионов. У меня есть переключатель, работающий, но я не могу заставить его полностью удалить цвет все, что я могу заставить его сделать, это изменить прозрачность цвета. Если я помесчу стиль CSS в выбранном элементе в редакторе, он удалит цвет, как я хочу, но в моем коде он не будет. < /P>
// Create the hide/show icon
var hideShowIcon = document.createElement('i');
hideShowIcon.className = 'fa-regular fa-eye-slash';
hideShowIcon.style.cursor = 'pointer';
hideShowIcon.title = 'Hide/Show region';
hideShowIcon.addEventListener('click', function(event) {
event.stopPropagation();
var layer = riskLayer.getLayers()[index];
if (typeof layer.options.hidden === 'undefined') {
layer.options.hidden = false;
}
layer.options.hidden = !layer.options.hidden;
if (layer.options.hidden) {
layer.setStyle({
fill: 'rgba(0, 0, 0, 0)',
color: 'rgba(0, 0, 0, 0)',
fillOpacity: 0
});
hideShowIcon.className = 'fa-regular fa-eye';
} else {
layer.setStyle({
fill: getColorForLayer('risk', feature.properties.Risk, false),
color: getColorForLayer('risk', feature.properties.Risk, false),
fillOpacity: 0.5
});
hideShowIcon.className = 'fa-regular fa-eye-slash';
}
});
li.appendChild(hideShowIcon);
regionList.appendChild(li);
});
Подробнее здесь: https://stackoverflow.com/questions/797 ... pplication