Heim >Web-Frontend >js-Tutorial >Wie überprüfe ich mit jQuery, ob eine Eingabe den Fokus hat?

Wie überprüfe ich mit jQuery, ob eine Eingabe den Fokus hat?

Patricia Arquette
Patricia ArquetteOriginal
2024-11-15 03:22:02457Durchsuche

How to Check if an Input Has Focus Using jQuery?

Verwenden von jQuery zum Testen, ob eine Eingabe den Fokus hat

Dieses Dilemma entsteht, wenn jQuery zum Replizieren des CSS-:Hover-Verhaltens für andere Elemente als < verwendet wird ;a> im IE6. Die Grenze um das

verschwindet, wenn eine Eingabe innerhalb des Formulars den Fokus erhält und der Mauszeiger hinein und hinaus schwebt.

Um dieses Problem zu beheben, kann jQuery verwendet werden, um zu überprüfen, ob eine Eingabe innerhalb des Formulars den Fokus hat. Da jQuery jedoch keinen :focus-Selektor hat, müssen alternative Methoden eingesetzt werden.

jQuery 1.6

Ab jQuery 1.6 ist ein :focus-Selektor verfügbar. Der folgende Code kann verwendet werden, um den Fokus zu überprüfen:

$("..").is(":focus")

jQuery 1.5 und niedriger

Für frühere jQuery-Versionen kann der folgende Code verwendet werden, um a zu definieren Neuer Selektor und auf Fokus prüfen:

jQuery.expr[':'].focus = function(elem) {
  return elem === document.activeElement &amp;&amp; (elem.type || elem.href);
};

Alternativ können Sie überprüfen, welches Element den Fokus hat, indem Sie Folgendes verwenden:

$(document.activeElement)

Für alle jQuery-Versionen

Um die Kompatibilität mit verschiedenen jQuery-Versionen sicherzustellen, können Sie den :focus-Selektor wie folgt hinzufügen:

(function ($) {
  var filters = $.expr[":"];
  if (!filters.focus) {
    filters.focus = function(elem) {
      return elem === document.activeElement &amp;&amp; (elem.type || elem.href);
    };
  }
})(jQuery);

Durch Testen des Fokus kann verhindert werden, dass der Rahmen verschwindet, wenn eine Eingabe den Fokus erhält und der Cursor schwebt rein und raus.

Das obige ist der detaillierte Inhalt vonWie überprüfe ich mit jQuery, ob eine Eingabe den Fokus hat?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn