<head>
  <script src="jquery.js"></script>
  <script>
    $(document).ready(function() {
      if (!("autofocus" in document.createElement("input"))) {
        $("#q").focus();
      }
    });
  </script>
</head>
<body>
  <form name="f">
  <input id="q" autofocus>
  <input type="submit" value="Wyślij">
</form>
</body>

jQuery zgłasza swoje zdarzenie ready w chwili, gdy dostępne staje się drzewo DOM strony — tzn. czeka na wczytanie tekstu, ale nie czeka na wczytanie wszystkich obrazów. Nie jest to optymalne rozwiązanie — jeśli strona będzie bardzo obszerna albo połączenie sieciowe bardzo powolne, to użytkownik i tak będzie miał okazję zacząć coś robić, zanim zostanie uruchomiony skrypt fokusu. Ale jest to o wiele lepsze niż czekanie na zdarzenie window.onload.

← Powrót do HTML5. Rzeczowo i na temat