убрать фокус из HTML-элемента при загрузке

0

Я использую эту тему для своего веб-сайта, и я настроил ее содержимое. Я добавил еще один слайд (фрагмент), для формы входа. Однако из-за поля ввода имени пользователя в этой форме, всякий раз, когда страница загружается, фокус переходит из домашнего фрагмента в это поле имени пользователя, и страница выглядит искаженной. Я попытался добавить скрытое поле hiddenfield в первом фрагменте дома и письме

<body onload="setfocus()">

где setfocus() является

function setfocus() {
    document.getElementById("hiddenfield").focus();
}

но это не сработало.

Короче говоря, мне нужно удалить фокус по умолчанию из окна ввода на странице и передать его фрагменту. Как это сделать? Пожалуйста, помогите, поскольку мне нужно немедленно исправить эту проблему.

  • 0
    Я не думаю, что вы можете сфокусировать скрытое поле. Какой элемент вы хотели бы быть в фокусе?
  • 0
    Я не хочу, чтобы какой-то конкретный элемент был в фокусе, вместо этого я думаю, что если я смогу отключить текстовое поле имени пользователя, потеряет фокус при загрузке, веб-страница будет выглядеть правильно
Показать ещё 4 комментария
Теги:

3 ответа

0
Лучший ответ

JsFiddle

Попробуйте это в тегах <script> или в отдельном файле .js.

(function() {
   document.getElementById("hiddenfield").focus();
})();

или:

<!DOCTYPE html>
<html>
<head>
<script>
function setFocus()
{
    document.getElementById("hiddenfield").focus();
}
</script>
</head>

<body onload="setFocus()">
<!-- stuff here -->
</body>

</html>
  • 0
    Да, я сделал то же самое, но, к сожалению, это не сработало ..
  • 0
    Эта скрипка работает: jsfiddle.net/vJQL9 @tigerden
Показать ещё 2 комментария
1

Я не смог воспроизвести фокус по умолчанию для поля ввода, но если вы добавите id attr к элементу, который должен находиться в верхней части страницы, вы сможете перейти к нему после загрузки страницы.

<html>
<head>
<script type="text/javascript">
    window.onload = function(){
        window.location.hash = '#divToFocus';
    }
</script>
</head>
<body>
<div id="divToFocus">fasdfsdfsd</div>   
<form action="action">
    <fieldset>
        <legend>Personal information:</legend>
        Name: <input type="text" size="30" /><br />
        E-mail: <input type="text" size="30" /><br />
        Date of birth: <input type="text" size="10" />
    </fieldset>
</form>
</body>
</html>
0

Попробуйте window.focus() вместо скрытого элемента

Ещё вопросы

Сообщество Overcoder
Наверх
Меню