bootstrap - Por defecto html form focus sin JavaScript
set focus html element (5)
¿Es posible establecer el foco de entrada predeterminado en un formulario HTML sin usar JavaScript, por ejemplo:
<html>
<form>
Input 1: <input type="text" name="textbox1"/>
<br/>
Input 2: <input type="text" name="textbox2"/>
</form>
</html>
Quiero establecer el foco predeterminado en cualquiera de los cuadros de texto cuando el formulario se carga sin usar JavaScript (ya que quiero que el comportamiento ocurra cuando un usuario tiene js desactivado).
Algo que debe tenerse en cuenta ... si establece un elemento de formulario enfocado, cualquiera que use la Tecnología asistida (AT) como un lector de pantalla deberá hacer una copia de seguridad para ver los menús y cualquier otro contenido que esté antes del campo enfocado.
Un método preferido, en mi opinión, es no enfocar ningún campo, excepto un skip-link si está disponible. Eso les da la opción de saltar al contenido de las páginas o leer la página de arriba hacia abajo.
Como han dicho otros, sin Javascript no puede garantizar un campo predeterminado. Una opción alternativa que quizás desee probar, si tiene varios campos a los que un usuario podría querer acceder, es usar el atributo accesskey
. Esto esencialmente significará que un usuario puede regresar a cualquiera de los campos de forma instantánea más tarde durante la navegación, lo que puede ser útil para los usuarios de lectores de pantalla, etc.
El artículo de Wikipedias sobre este tema es bastante útil: http://en.wikipedia.org/wiki/Access_key
Esto no es posible sin alguna forma de scripting. Incluso la página de inicio de Google requiere Javascript para enfocar el campo de búsqueda.
Puede hacerlo en HTML5, pero de lo contrario, debe usar JavaScript.
HTML5 le permite agregar autofocus
a su elemento de formulario, por ejemplo:
<input type="text" name="myInput" autofocus />
Esto funciona en navegadores compatibles con HTML5 (o mejor dicho, navegadores que soportan esta parte específica de HTML5) pero, como usted sabe, no todos pueden usarlo todavía.
Sin embargo, es posible que puedas usar el atributo tabindex y usar el valor más bajo en el cuadro de texto predeterminado. Compruebe aquí para soporte de navegador:
http://reference.sitepoint.com/html/object/tabindex#compatibilitysection
El sitio sugiere que
(en casi todos los demás casos, a saber, controles de formulario y enlaces, el tabindex tiene un excelente soporte)