Hans: tooltip div

Moin moin,
ich verwende ein div als tooltip beim Überfahren einiger Elemente.

onmousemove = tooltip('text');
...
function tooltip(tooltipText) {
// schreibt den Text in die Tooltip-Box
document.getElementById("tooltipDiv").innerHTML = tooltipText;
// Tooltip-Box wird sichtbar
document.getElementById("tooltipDiv").style.visibility = "visible";
}

Das Ausblenden des Tooltips mache ich bisher so:
onmouseout = tooltipHidden();
...
function tooltipHidden() {
document.getElementById("tooltipDiv").style.visibility = "hidden";
}

Das möchte ich aber am liebsten in einer Funktion abhandeln. Z.B. so:

function tooltip(tooltipText) {
// schreibt den Text in die Tooltip-Box
document.getElementById("tooltipDiv").innerHTML = tooltipText;
// Tooltip-Box wird sichtbar
document.getElementById("tooltipDiv").style.visibility = "visible";
// beim Verlassen des Elements wird der Tooltip gelöscht
document.getElementById(AUSLÖSER).onmouseout = function onmouseout(){document.getElementById("tooltipDiv").style.visibility = "hidden";}
}

Ich suche nun den AUSLÖSER.

Hans

  1. Hallo!

    onmousemove = tooltip('text');
    ...
    Ich suche nun den AUSLÖSER.

    Wie meinen? Mit onmousemove wirst du wahrscheinlich nicht so glücklich werden. Ich empfehle dir onmouseover bzw onclick, je nachdem was du willst.

    --
    LG,
    Snafu
    1. Wie meinen?

      Hats recht. Das Problem bleibt aber.

      1. onmousemove hat den vorteil,
        dass, wenn du die tooltipposition jedesmal festlegt, sie sich bei bewegung der maus anpasst.

        1. onmousemove hat den vorteil ...

          Das hab ich auch so. Zum posten hab ich das aber alles (bis auf onmousemove :-) vereinfacht.

  2. ich empfehle dir folgende lösung, die bei mir gut funktioniert.

    html-datei
    <div class="tooltipped">Mit Tooltip</div>

    javascript-datei

    function Tooltip (_tipped, _tip) {  
      var tipped = _tipped;  
      var tip = _tip;  
      this.onIn = function () {  
        tip.style.visibilty = "visible";  
        // ggf. Position anpassen  
      }  
      this.onOut = function () {  
        tip.style.visibilty = "hidden";  
      }  
      
      tipped.onmousemove = this.onIn;  
      tipped.onmouseout = this.onOut;  
    }  
      
    // Ggf. nach Klassenname in Schleife zuweisen oder ähnlich ...  
    tooltips = new Array();  
    tooltips[0] = new Tooltip(..., ...);
    
    1. ich empfehle dir folgende lösung, die bei mir gut funktioniert.

      Danke.