Ну, в заголовке сказано все, но здесь есть какой-то код, поэтому вы видите, что я имею в виду.
function eachFeature(feature, layer) {
layer.on({
mouseover: highlightFeature,
mouseout: resetHighlight,
});
}
geojson = L.geoJson(geojson_raw, { style: style, onEachFeature: eachFeature });
geojson.addTo(map);
geojson_raw
- объект geojson, который хранится в переменной javascript.
style
- это просто функция, возвращающая объект с некоторыми атрибутами стиля.
highlightFeature
/resetHighlight
- это функции для изменения этих стилей в соответствии с событиями mousein/out.
Итак, этот код работает, и я уже знаю, как изменять стили, реагируя на пользовательские события. Но как я могу установить фактическое имя css-class на пути, созданные из моих данных geojson? Позже в моем коде я хотел бы выбрать пути по определенному имени класса.
ОБНОВЛЕНИЕ
Через 2 года я снова наткнулся на этот вопрос. И мне потребовалось 2 часа, чтобы разгадать тайну. Принятый ниже ответ работает, НО есть улов. Он работает, только если вы установили cssClass до, который вы вызываете addTo(map)
на уровне. После того, как он окончательно выкопал его в исходном коде, стало ясно, что листовки устанавливают только cssClass, когда каждый путь инициализируется.