2016-07-26 17 views
0

Ich versuche, den Cursor zu ändern, wenn sie über eine Funktion mit Openlayers bewegt 3. ich diesen Code bin mit:Mauszeiger über Funktionen, auch wenn sie von einem Overlay versteckt sind

map.addInteraction(new ol.interaction.Select({ 
    condition : function(event) { 
    return ol.events.condition.pointerMove(event); 
    } 
})); 

Mein Problem kommt wenn das Feature durch ein Popup (wie in der OL3 examples erstellt) versteckt ist. Wenn Sie die Maus an die Stelle bewegen, an der sich das Feature befindet, ändert sich der Cursor auch dann, wenn das Feature durch das Popup ausgeblendet wird.

Ist es möglich, die Auswahl für Features zu deaktivieren, wenn sie nicht sichtbar sind?

Siehe eine example.

+0

Können Sie überprüfen, ob Ihre Frage anwsers? http://stackoverflow.com/questions/33936795/how-to-prevent-feature-clicks-through-popup/33939477#33939477 –

+0

Das verhindert das Klicken, aber der Cursor wird immer noch bei Mouseover geändert. –

Antwort

1

Sie müssen die mousemove- Ereignis der Karte sprudeln zu stoppen, wenn die Maus über das Pop-up ist

document.getElementById("popup").onmousemove = function(e) { 
    e.stopPropagation(); 
}; 

Siehe edited fiddle

+0

Es funktioniert! Ich suchte in der OL-Bibliothek und dachte nicht an eine Lösung auf niedrigerer Ebene. Vielen Dank! –