Я использую эту тему для своего веб-сайта, и я настроил ее содержимое. Я добавил еще один слайд (фрагмент), для формы входа. Однако из-за поля ввода имени пользователя в этой форме, всякий раз, когда страница загружается, фокус переходит из домашнего фрагмента в это поле имени пользователя, и страница выглядит искаженной. Я попытался добавить скрытое поле hiddenfield
в первом фрагменте дома и письме
<body onload="setfocus()">
где setfocus()
является
function setfocus() {
document.getElementById("hiddenfield").focus();
}
но это не сработало.
Короче говоря, мне нужно удалить фокус по умолчанию из окна ввода на странице и передать его фрагменту. Как это сделать? Пожалуйста, помогите, поскольку мне нужно немедленно исправить эту проблему.
Попробуйте это в тегах <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>
Я не смог воспроизвести фокус по умолчанию для поля ввода, но если вы добавите 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>
Попробуйте window.focus() вместо скрытого элемента