Daniel Reckling: Prüfen, ob Element gerade fokusiert ist?

Hallo, ich möchte einem Eingabefeld bei onmouseover eine andere Klasse und dann onFocus noch eine weitere Klasse geben. Mit onblur und onmouseout stell ich dann den Ursprung wieder her.

Problem: Wird in ein Eingabefeld geklickt, greift onfocus und wenn ich dann die Maus zur Seite schiebe, direkt auch onmouseout.

Wie kann ich abfragen, ob ein Element gerade den Focus hat um in diesem Falle das onmouseout-Event zu unterdrücken?

Theoretisch könnte ich mir in eine Variable schreiben, welches Element gerade aktiv ist, aber vielleicht gehts auch eleganter?

this.isfocused oder so fänd ich toll :-)

  1. Nein leider gibt es soetwas nicht!

    Das einzige was mir einfällt ist, das du mit einer
    if Abfrage arbeitest also irgendwas wie if (focus = true) oder so, müßte klappen ;-)

    maik

  2. Hi,

    this.isfocused oder so fänd ich toll :-)

    Du kannst alle Elemente die onfocus verstehen mit einem onfocus-Eventhandler versehen, der bei jedem Element eine Eigenschaft isfocused auf true setzt, und bei onblur auf false.

    Das kannst Du in einer kleinen Schleife für eben alle möglichen oder auch nur für eine Liste der gewünschten Elemente machen.

    Gruß, Cybaer

    --
    Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!
  3. Wie kann ich abfragen, ob ein Element gerade den Focus hat um in diesem Falle das onmouseout-Event zu unterdrücken?

    Ganz einfach: Überprüfe, ob der Klassenname des Elementes die durch den onfocus-handler gesetzte Klasse enthält.

    Gruß, David

  4. Wie kann ich abfragen, ob ein Element gerade den Focus hat um in diesem Falle das onmouseout-Event zu unterdrücken?

    Ich habe da mal was gebastelt:
    http://sniplets.anaboe.net/javascript05.html

    Siechfred

    --
    Ich bin strenggenommen auch nur interessierter Laie. (molily)
    1. Ich habe da mal was gebastelt:
      http://sniplets.anaboe.net/javascript05.html

      Warum speicherst du nur den Namen und nicht gleich das ganze Objekt?
      Das dürfte sogar Speicherplatzsparender sein, da ein String immer kopiert wird, ein Objekt aber nur eine Referenz enthält.

      Struppi.

      --
      Javascript ist toll (Perl auch!)
      1. http://sniplets.anaboe.net/javascript05.html
        Warum speicherst du nur den Namen und nicht gleich das ganze Objekt?

        Als ich das bastelte, brauchte ich nur den Namen. Aber du hast vermutlich Recht ;)

        Siechfred

        --
        Ich bin strenggenommen auch nur interessierter Laie. (molily)
  5. Hallo,

    Wie kann ich abfragen, ob ein Element gerade den Focus hat um in diesem Falle das onmouseout-Event zu unterdrücken?

    Vgl. </archiv/2006/8/t135258/#m877872>

    Mathias