Google Map Infofenster bei Mouseover öffnen
Auf der Webseite Berggenuss werden mit Hilfe der Module Location und GMap Karten aller Alpenländer eingebunden und die eingetragenen Betriebe angezeigt.
Nun kam die Idee auf, daß sich das Info-Fenster mit den Betriebs-Details nicht erst bei Klick auf den jeweilige Marker, sondern bereits bei einem MouseOver-Event öffnen soll.
Eigentlich hatte ich die Doku entnommen, daß dies durch einen Eintrag im Backend für das Modul Gmap eingestellt werden könnte.
Ganz so einfach geht es allerdings nicht, wie auch die verschiedenen Posts im Netz zeigen.
Wenn man mit dem JavaScript-Debugger von Firebug das Verhalten beobachtet, dann findet man recht schnell die Stelle, wo das Verhalten gemanaged wird.
Es ist die Datei sites/all/modules/gmap/js/marker.js.
Hier ist das Click-Event definiert, aber der Mouseover-Event würde erst greifen, wenn der Haken im Backend bei extramarkerevents gesetzt wäre.
Letzteres läßt sich nicht einstellen. Das Verhalten ist bekannt.
(Hier kann der Code als Textdatei geladen werden)
Ein erster Test hat ergeben, man muss unbedingt unterbinden, daß ein Mouseover das geöffnete Fenster schließt und ein neues Fenster öffnet, auf dem sich die Maus evt. unabsichtlich befindet.
Dies wird mit dem Parameter openwin bewerkstelligt.
Ein paar Änderungen bezüglich der Größe des Infofensters wurden auch noch eingebaut, damit es keinen Scrollbalken gibt und damit die Breite immer gleich ist.
Auf den Übersichtskarten von Berggenuss wird das Mouseover übrigens nicht eingesetzt.
Es ist nur benutzerfreundlich, wenn sich auf der Karte nur wenige Marker befinden und genug Platz zwischen den Markern ist.
Andernfalls werden beim Ansteuern eines gewünschten Markers unerwünschte Fenster geöffnet, weil man sie versehentlich mit der Maus überfährt.
Das Mouseover ist also ein netter Gag, aber keinesfalls überall sinnvoll.