web-dev-qa-db-fra.com

Pourquoi autofocus = "autofocus" ne fonctionne-t-il pas dans Mozilla Firefox?

<INPUT TYPE=TEXT NAME="Gw" MAXLENGTH="225" size="42" autofocus="autofocus">

Si j'essaie cela avec Google Chrome, cela fonctionne. Je veux juste mettre en évidence un formulaire sans <script>.

Pourquoi ça ne marche pas?

4
LanceBaynes

Cela devrait fonctionner dans Firefox 4. Mais si vous utilisez une version plus ancienne de Firefox, cela ne fonctionnera pas, car l'attribut autofocus est une nouveauté de HTML5 qui n'a obtenu qu'un support étendu dans Firefox 4 ..

2
John Conde

Il est sage d'utiliser autofocus avec un repli JavaScript pour les navigateurs qui ne le prennent pas en charge. De Mark Pilgrim's Plongez dans les formulaires HTML5 :

Qu'est-ce que c'est? Vous dites que vous souhaitez que vos champs de mise au point automatique fonctionnent dans tous les navigateurs, pas seulement ces navigateurs HTML5 fantaisistes? Vous pouvez conserver votre script de mise au point automatique actuel. Il suffit de faire deux petits changements:

  1. Ajouter l'attribut autofocus à votre balise HTML
  2. Déterminez si le navigateur prend en charge l’attribut autofocus et n’exécutez votre propre script d’autofocus que si le navigateur ne prend pas automatiquement en charge la mise au point automatique.
<form name="f">
  <input id="q" type="text" name="Gw" maxlength="225" size="42" autofocus>
  <script>
    if (!("autofocus" in document.createElement("input"))) {
      document.getElementById("q").focus();
    }
  </script>
  <input type="submit" value="Go">
</form>

Démo en direct ici.

7
Nick

J'essaie de nouveau du code. En fait, j'utilise la version de Firefox 34.xx, mais je ne peux toujours pas utiliser l'autofocus. J'ai essayé le code ci-dessus, mais cela n'a pas fonctionné pour moi, puis j'essaie de créer mon propre code. J'utilise la bibliothèque JQuery. si vous n'avez pas travaillé aussi, essayez ce code: HTML

<input type="text" name="searchMenu" placeholder="blaa.. blaaa..." id="searchMenu" autofocus focus>


$(document).ready(function(e) {
    $("#searchMenu").focus();
});
1
Mahendra Wardana