64 votes

Comment sélectionner un élément qui a le focus avec jQuery

Comment pouvez-vous sélectionner un élément qui a le focus actuel?

Il n'y a pas de filtre :focus dans jQuery, c'est pourquoi nous pouvons utiliser quelque chose comme ceci:

 $('input:focus').someFunction();
 

153voto

Sam Shiles Points 3254

$(document.activeElement) renverra l'élément actuellement ciblé et sera plus rapide que d'utiliser le pseudo sélecteur: focus.

Source: http://api.jquery.com/focus-selector/

123voto

BiBi Points 1223
 alert($("*:focus").attr("id"));
 

J'utilise jQuery.

Cela alertera l'identifiant de l'élément se concentrant.

J'espère que cela vous sera utile.

32voto

Mike_G Points 4519

La meilleure façon de le faire consiste à configurer un gestionnaire pour l'événement onFocus, puis à définir une variable sur l'ID de l'élément qui a le focus.

quelque chose comme ça:

 var id;

$(":input").focus(function () {
     id = this.id;
});
 

5voto

jmanrubia Points 515

Si vous utilisez JQuery, vous pouvez écrire un sélecteur comme celui-ci :

 $.expr[':'].focus = function(a){ return (a == document.activeElement); }
 

Vous pouvez ensuite sélectionner l'élément actuellement ciblé: $(":focus")

Non seulement les contrôles de formulaire peuvent avoir le focus. Tout élément html avec un tabindex peut être ciblé dans les navigateurs modernes.

5voto

bendewey Points 25437
Merci beaucoup

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X