Armin: OnMousemove in «option» (Tooltips)

Hallo miteinander,
ich habe eine Auswahlliste mit <select> definiert, und
moechte nun im <option> tag den Javascript-Befehl
OnMousemove benutzen, um davon abhaengig ein kleines
Fenster mit einer kurzen "Hilfe" zu oeffnen.

Leider funktioniert das ganze im <option> tag nicht,
wohingegen es z.B. in einem Verweis wunderbar funktioniert.

Vielleicht kann mir jemand weiterhelfen.

Vielen Dank schon jetzt
Gruss Armin

  1. hallo armin,

    Leider funktioniert das ganze im <option> tag nicht,
    wohingegen es z.B. in einem Verweis wunderbar funktioniert.

    in der html 4.0 spezifikation sind für das option-element leider nur die follgenden events vorgesehen:  onfocus onblur und onchange.

    gruß,
    frank_eee

  2. Hallo,

    Leider funktioniert das ganze im <option> tag nicht,
    wohingegen es z.B. in einem Verweis wunderbar funktioniert.

    was wohl daran liegt, dass "OPTION" kein "physischer" Bestandteil eines HTML-Dokumentes ist, sondern (wie der Name sagt) einen Options-WERT für das "physisch" präsente SELECT-Element gilt.
    OPTION ist also weder ein "Control" (z.B. Button, Textbox) noch ein - für sich alleinstehendes, gultiges - HTML Element sonderen eher ein "sehr ausführliches Attribut" :-)

    Ebenso gelten auch für die Elemente im <HEAD> keine (Standard-)Events, weil sie dem Anwebder (~ Browser) nicht "als greifbares Interface" dargelegt werden und dadurch auch nichts "zum reagieren" existiert.

    Andererseite ist die Verfügbarkeit von onMouseOver A und AREA auch "nur" im Netscape 4 gegeben.
    Ab IE4 ist onMouseOver (als Standard-Event) bei allen ("visuellen") Elementen verfügbar.

    Mit viel Geduld und Spucke kannst du ggf. die X-Y-Positionen der Maus "über" einem Optionswert abfragen und dann deine Tooltips generieren. Dies setzt aber voraus, dass du (irgendwie) anhand des event-Objektes in der Lage sein mußt

    • die Koordinaten des (Parent-)SELECT-Elementes abfragen
    • die Indizes der gerade *sichtbaren* Einträge (OPTIONS)
        in dem SELECT ermitteln
    • durch rechnersiche Spielereien die Mauskoordinaten in
        "Zeilenoffsets" für dieser Einträge ermitteln
        (== aktuelle Schriftgröße ermitteln/berücksichtigen)
    • dir bewust sein, daß es versch. OS, Schriften und User-
        Einstellungen gibt, die deine Bemühungen zu nichte machen
        können (und wohl werden)
    • feststellen, dass der Gedanke GUI-technisch zwar löblich,
        aber nur schwer, wenn gar unmöglich (zum jetzigen Zeitpunkt
        der verfügbaren Browser-Software) zu implementieren sein wird.
    • dies bereits bei "echten" Programmen die mir "echten" Programmier-
        sprachen mit Zugriff auf das volle API des jeweiligen OS
        schon mehr als tricky ist.

    Wenn du es geschafft hast, kannst du ja das Ergebnis hier posten. Alle HTML-GUI-Freggler werden dir danken :-))

    Welche Elemente über welche (Standard-)Events verfügen kannst du (u.a.) den JS- bzw. DOM-Dokumentationen bei
    Netscape
    http://developer.netscape.com
    Microsoft
    http://msdn.microsoft.com/workshop
    dem W3C
    http://www.w3.org/DOM/
    und natürlich SelfHTML
    <selfhtml/tebj.htm>
    entnehmen.

    Viel Spaß
    CirTap

    1. hups...

      Andererseite ist die Verfügbarkeit von onMouseOver A und AREA auch "nur" im Netscape 4 gegeben.

      soll heißen

      Andererseite ist die "Beschränkung" von onMouseOver AUF <A> und <AREA> auch "nur" im Netscape 4 gegeben.

      CirTap