Michi: Gesucht: JavaScript-Tooltip-Komponente, wobei der Tooltip zuklappt, wenn das Bezugselement verschwindet

Hallo zusammen,

kann jemand aus der praktischen Erfahrung heraus eine JavaScript-basierte Tooltip-Komponente empfehlen, die idealerweise auch HTML anzeigen kann und von sich aus überprüft, ob das Bezugselement noch im DOM-Baum vorhanden bzw. sichtbar ist und den Tooltip entsprechend von sich aus zuklappt?

Ein typisches Szenario sind Drag&Drop-Vorgänge mit Elementen, an die Tooltips angebunden sind.

Die Tooltip-Komponente von jQuery UI merkt z.B. nicht von sich aus, wenn das Drag-Element nach dem Drop-Vorgang gar nicht mehr sichtbar ist, womit der dazugehörige Tooltip ohne Bezug in der Luft hängt, wenn man nicht in jeden drop-Callback Code zum Ausblenden der Tooltips reinprogrammiert. Ich suche nun also eine Komponente, die dieses Verhalten ("Wenn Bezugselement nicht mehr sichtbar, dann blende Tooltip auch aus") standardmäßig mitbringt.

Gruß Michi

  1. Hi Michi!

    kann jemand aus der praktischen Erfahrung heraus eine JavaScript-basierte Tooltip-Komponente empfehlen, die idealerweise auch HTML anzeigen kann und von sich aus überprüft, ob das Bezugselement noch im DOM-Baum vorhanden bzw. sichtbar ist und den Tooltip entsprechend von sich aus zuklappt?

    So eine Komponente kenne ich leider nicht. Das mag daran liegen, dass das technisch nicht so simpel ist. Ein Script kann meines Wissens nach nur über Umwege feststellen dass ein Element von einem anderen Script aus dem DOM geworfen wird. Diese "Umwege" sind MutationObserver und die etwas älteren Mutation-Events. Vielleicht findest du ein Tooltipscript dass diese benutzt.

    ... wenn man nicht in jeden drop-Callback Code zum Ausblenden der Tooltips reinprogrammiert. Ich suche nun also eine Komponente, die dieses Verhalten ("Wenn Bezugselement nicht mehr sichtbar, dann blende Tooltip auch aus") standardmäßig mitbringt.

    Das manuelle Entfernen eines Tooltips musste ich schon häufiger "reinprogrammieren" und habe noch nirgends gesehen, dass es zuverlässig automatisch passiert. Ich will nicht ausschließen dass irgend ein Tooltipscript das kann, aber eine ungenaue "Heuristik" mit Mutation-Observern finde ich persönlich unflexibler und weniger zuverlässig als das manuelle Aufrufen. Im letzteren Fall hat man genau unter Kontrolle, wann der Tooltip verschwindet, und es funktioniert in allen Browsern. Was ist denn so schlimm am manuellen Ausblenden der Tooltips im drop-Handler?

    Grüße

    PeterK