Heim > Web-Frontend > js-Tutorial > Wie erkennt man den Eingabefokus in jQuery: Hover- oder Focus-Ereignisse?

Wie erkennt man den Eingabefokus in jQuery: Hover- oder Focus-Ereignisse?

Susan Sarandon
Freigeben: 2024-11-19 18:29:02
Original
820 Leute haben es durchsucht

How to Detect Input Focus in jQuery: Hover vs. Focus Events?

JQuery zum Erkennen des Eingabefokus verwenden

Sie möchten einen Rahmen auf einem Formularelement in einem Div beibehalten, wenn die darin enthaltene Eingabe den Fokus hat, auch wenn sich die Maus bewegt innerhalb und außerhalb der Div. Die hover()-Methode von jQuery stört jedoch das focus()-Ereignis.

jQuery 1.6

Mit jQuery 1.6 können Sie den integrierten :focus-Selektor verwenden um den Eingabefokus zu bestimmen. Verwenden Sie einfach:

$("..").is(":focus")
Nach dem Login kopieren

jQuery 1.5 und niedriger

Ben Almans empfohlene Methode für diese Aufgabe lautet wie folgt:

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

Jede jQuery-Version

Wenn Sie beide Versionen von jQuery unterstützen müssen, können Sie den :focus-Selektor hinzufügen, falls er fehlt:

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

Alternativ können Sie den erhalten aktuell fokussiertes Element mit:

$(document.activeElement)
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie erkennt man den Eingabefokus in jQuery: Hover- oder Focus-Ereignisse?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage