Ich versuche, eine Geojson-Karte auf eine Flugblattkarte zu setzen, und alles funktioniert einwandfrei, bis ich den Standard-Blu-Marker verwende.
Jetzt möchte ich einen benutzerdefinierten Marker (ein kleines PNG-Symbol) verwenden und habe meinen Code im Folgenden geändert
var my_json;
$.getJSON('../Dati/my-geojson.geojson', function(data) {
my_json = L.geoJson(data, {
pointToLayer: function(feature, latlng) {
var smallIcon = L.Icon({
options: {
iconSize: [27, 27],
iconAnchor: [13, 27],
popupAnchor: [1, -24],
iconUrl: 'icone/chapel-2.png'
}
});
return L.marker(latlng, {icon: smallIcon});
},
onEachFeature: function (feature, layer) {
layer.bindPopup(feature.properties.ATT1 + '<br />'
+ feature.properties.ATT2);
}
});
my_json.addTo(markers.addTo(map));
TOC.addOverlay(my_json, "My layer name in TOC");
map.removeLayer(my_json);
});
Der Fehler, den ich in Firebug sehen kann, ist
TypeError: this.options.icon is undefined
var anchor = L.point(this.options.icon.options.popupAnchor || [0, 0]);
etwas läuft schief, aber ich weiß nicht, wie ich es beheben soll.