Maison > Article > interface Web > Comment vérifier si une entrée a le focus à l’aide de jQuery ?
Utiliser jQuery pour tester si une entrée a le focus
Ce dilemme se pose lors de l'utilisation de jQuery pour répliquer le comportement de survol CSS pour des éléments autres que < ;a> dans IE6. La frontière entourant le
Pour résoudre ce problème, jQuery peut être utilisé pour vérifier si une entrée dans le formulaire a le focus. Cependant, comme jQuery ne dispose pas d'un sélecteur :focus, des méthodes alternatives doivent être utilisées.
jQuery 1.6
Avec jQuery 1.6 et supérieur, un sélecteur :focus est disponible. Le code suivant peut être utilisé pour vérifier le focus :
$("..").is(":focus")
jQuery 1.5 et versions antérieures
Pour les versions antérieures de jQuery, le code suivant peut être utilisé pour définir un nouveau sélecteur et vérifier le focus :
jQuery.expr[':'].focus = function(elem) { return elem === document.activeElement && (elem.type || elem.href); };
Vous pouvez également vérifier quel élément a le focus using :
$(document.activeElement)
Pour toutes les versions de jQuery
Pour garantir la compatibilité avec les différentes versions de jQuery, vous pouvez ajouter le sélecteur :focus comme suit :
(function ($) { var filters = $.expr[":"]; if (!filters.focus) { filters.focus = function(elem) { return elem === document.activeElement && (elem.type || elem.href); }; } })(jQuery);
En testant le focus, il est possible d'empêcher la bordure de disparaître lorsqu'une entrée obtient le focus et que le curseur entre et sort.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!