Roland Lange: Fenster-Positionierung

Hallo!

Ich habe ein Tooltip-Script, welches sich mit "onmouseover" öffnet.
Mit welchem Befehl kann ich ide Position des Fensters festelgen, also WO es aufgeht.

Vielen Dank
Grüße
Roland

  1. Tach!

    Das sollte screenX() und screenY() beim NN und clientX() und clientY() beim IE sein...

    Die Angaben erfolgen natürlich in Pixeln (wobei NN da natürlich nicht ganz das macht was man will :o)).
    Einfach bissel rumprobieren!

    Gruss,
    CS

  2. Hallo!

    Ich habe ein Tooltip-Script, welches sich mit "onmouseover" öffnet.
    Mit welchem Befehl kann ich ide Position des Fensters festelgen, also WO es aufgeht.

    Oh nein, bitte kein onmouseover-Fenster! Das ist sowas von nervig für den User, vor allem wenn man die Biester ständig wieder selbst schließen muß.

    Halte dich einfach an folgende Konvention: Beim Mausklick darf ein neues Fenster geöffnet werden (das ist eine Aktion, die man als User noch ungefähr erwartet: Entweder neue Seite im alten Fenster, oder neue Seite im neuen Fenster), bei mouseover/mouseout aber bitte nur vorhandene Seitenelemente im gleichen Fenster manipulieren, also zum Beispiel den Layer mit dem Tooltipp einblenden.

    Einbauhilfe:

    <div id="tip01" style="position:absolute; left: 10px; top:20px; width:100px;">
    Hier dein Tooltipp, vielleicht auch als Tabelle und mit kleinerer Schriftart!
    </div>

    Zum Zeigen eines Layers baust du in den Kopf folgendes Script ein:
    <script type="text/javascript">
    // Einige Browserobjekte abfragen und speichern:
    ns4 = (document.layers)? true:false
    ie4 = (document.all)? true:false
    v6 = (document.getElementById)? true:false

    // Layer anzeigen, je nach Browsermöglichkeiten
    function showlayer(layerid)
      {
      if (ns4) document.layers[layerid].visibility = "show"
      else if (v6) document.getElementById(layerid).style.visibility = "visible";
      else if (ie4) document.all[layerid].style.visibility = "visible"
      }

    // Layer verstecken, genau das gleiche, nur andersrum ;)
    function hidelayer(layerid)
      {
      if (ns4) document.layers[layerid].visibility = "hide"
      else if (v6) document.getElementById(layerid).style.visibility = "hidden";
      else if (ie4) document.all[layerid].style.visibility = "hidden"
      }
    </script>

    und zum Anzeigen eines Tooltipps bei einem Link:

    <a href="whatever" onmouseover="showlayer('tipp01');" onmouseout="hidelayer('tipp01');">Dein Link</a>

    Es kann so einfach sein...

    - Sven Rautenberg

    1. Hi, Roland & Sven

      <div id="tip01" style="position:absolute; left: 10px; top:20px; width:100px;">

      <div id="tipp01" ...
                    ^^

      <a href="whatever" onmouseover="showlayer('tipp01');" onmouseout="hidelayer('tipp01');">Dein Link</a>

      Preisfrage: War das jetzt ein Tip- oder Tippfehler? ;-))

      LG Orlando