Je voudrais mettre l’accent sur le premier élément de la page en utilisant JQuery lorsque la page est chargée. Je pourrais réussir à définir le focus pour le premier élément en utilisant
$(":input:visible:first").focus();
ou
$(':input:enabled:visible:first').focus();
Selon jQuery, définissez le focus sur la première entrée activée ou sélectionnez ou zone de texte sur la page .
J’ai essayé d’utiliser l’un des éléments suivants:
$('select:first').focus(); $("select").first().focus(); $(':visible:first').focus(); $('enabled:visible:first').focus();
ou d’autres variantes auxquelles je pouvais penser, mais qui n’ont pas réussi.
Quelqu’un pourrait-il m’aider sur ce problème? Je suis un débutant à JQuery.
J’aimerais que cette fonction fonctionne pour tous les principaux navigateurs.
Merci beaucoup!
Le problème est probablement que vous n’exécutez pas le code après le chargement du DOM. Essaye celui-là:
$(document).ready(function(){ $("select:first").focus(); });
Cela devrait fonctionner.
EDIT: Vous pouvez simplifier un peu le code en utilisant ceci:
$(function(){ $("select:first").focus(); })
Si vous l’utilisez de cette façon, jQuery déclenchera cette fonction lorsque le DOM du document est prêt.
Vous appelez un élément qui n’est pas chargé dans DOM
. Placez votre code dans la fonction ready
.
jQuery(document).ready(function() { $(":input:visible:first").focus(); });
METTRE À JOUR:
Comme on le voit dans la réponse et les commentaires de @David, il a raison.
$(document).ready(function(){ $("select:first").focus(); });
mais vous n’avez pas correctement inclus jquery (comme vu dans le commentaire). vous avez manqué d’insérer http avant le script src
.