Ich arbeite Openlayers 3. Ich habe drei Schichten WMS auf der Karte wie folgt hinzugefügt: Gemeinde, Bezirk, Provinz. Ich habe "forEachLayerAtPixel" verwendet, um Informationen der aktuellen Ebene beim Zoomen zu erhalten. Beispiel: Wenn auf den Layer-Bereich zoomen, rufen Sie den Informations-Layer District auf, oder zoomen Sie auf den Layer Commune, und rufen Sie den Informations-Layer Commune ab. Aber es erhalten nur Informationen des Layers Province, wenn Zoom auf Layer District dann "undefined" zurückgeben. Ich benutzen Ereignis „pointermove“ für Hover auf der Karte:Openlayers 3 forEachLayerAtPixel bekommen nur Schicht
map.on("pointermove", function (evt) {
if (evt.dragging) return;
const hit = map.forEachLayerAtPixel(evt.pixel, (layer) => {
if (layer instanceof ol.layer.Tile)
return layer;
return null;
});
console.log(hit);
Hallo, was ist deine Frage? – feedMe
Keine Ebene zurückgeben oder die Suche wird beendet. Versetzen Sie das Protokoll in den Rückruf. –
[http://stackoverflow.com/help/how-to-ask](http://stackoverflow.com/help/how-to-ask) –