Estou tentando definir o foco padrão em uma caixa de entrada quando a página carrega (exemplo: google). Minha página é muito simples, mas não consigo descobrir como fazer isso.
Isso é o que eu tenho até agora:
<html>
<head>
<title>Password Protected Page</title>
<script type="text/javascript">
function FocusOnInput()
{
document.getElementById("PasswordInput").focus();
}
</script>
<style type="text/css" media="screen">
body, html {height: 100%; padding: 0px; margin: 0px;}
#outer {width: 100%; height: 100%; overflow: visible; padding: 0px; margin: 0px;}
#middle {vertical-align: middle}
#centered {width: 280px; margin-left: auto; margin-right: auto; text-align:center;}
</style>
</head>
<body onload="FocusOnInput()">
<table id="outer" cellpadding="0" cellspacing="0">
<tr><td id="middle">
<div id="centered">
<form action="verify.php" method="post">
<input type="password" name="PasswordInput"/>
</form>
</div>
</td></tr>
</table>
</body>
</html>
Por que isso não funciona enquanto isso funciona bem?
<html>
<head>
<script type="text/javascript">
function FocusOnInput()
{
document.getElementById("InputID").focus();
}
</script>
</head>
<body onload="FocusOnInput()">
<form>
<input type="text" id="InputID">
</form>
</body>
</html>
A ajuda é muito apreciada :-)
E você pode usar o atributo autofocus do HTML5 (funciona em todos os navegadores atuais, exceto IE9 e anteriores). Somente chame seu script se for IE9 ou anterior, ou uma versão mais antiga de outros navegadores.
fonte
autofocus
não é compatível com o Internet Explorer 9 e versões anteriores.Este é um dos problemas comuns com o IE e a correção para isso é simples. Adicione .focus () duas vezes à entrada.
Consertar :-
E chame FocusOnInput () em $ (document) .ready (function () {.....};
fonte
Você também pode usar:
E então em seu JavaScript:
fonte