Liebe Community
Layer Style per click wechseln statt mit mouseover/-out. Beispiel: http://opendatalab.de/projects/geojson-utilities/
Ich möchte diese click-Events statt moueseover/mouseout (Layer Style ändern und wieder zurücksetzen) in contao leaflet "onEachFeture expression" umsetzen. Zweiter click auf Element/Layer bzw. Karte = restStyle. Mit Mouseover ist das japroblemlos möglich (ist aber nicht mobile-fähig; click = tap), click bekomme ich nicht hin. Leider kann ich nicht programmieren, sodass ich auch Tipps von Leafletjs (z. B. rund um Choropleth Map) und anderen Foren nicht interpretieren/umschreiben kann. Das Stichwort "resetStyle" taucht auf ...
Mein Versuch dazu kann natürlich nicht funktionieren (erster click zum Wechsel geht, wenn der zweite ein mouseout ist, sonst nicht; mouseover/-out funktioniert natürlich). Wie hier eingetragen passiert gar nichts mit dem Vektorobjekt (GeoJSON File). Verständlich, es müsste wie bei mouseover ein "click-in" und click-out" geben ...(?).
Code:
function forEachFeature(feature, layer) {
if (layer instanceof L.Path) {
//Layer style
layer.setStyle({
weight: 10,
color: '#ff0000',
dashArray: '',
fillColor: 'ff0000',
fillOpacity: 0});
//Change layer style on click
layer.on('click', function() {layer.setStyle({
weight: 5,
color: '#666',
dashArray: '',
fillColor: '#666',
fillOpacity: 0.7});});
//reset layer style on click
layer.on('click', function() {layer.setStyle({
weight: 10,
color: '#ff0000',
dashArray: '',
fillColor: 'ff0000',
fillOpacity: 0});});
//Popup bei Click
layer.bindPopup('Ländername');
}
}
Hat jemand eine Idee dazu?
Ich wäre sehr dankbar.
Grüße, Matt
PS: Entschuldigung für meine programmtechnische Unzulänglichkeit.
Lesezeichen