Вчера было требование, надеясь, что страница автоматически прокручивается влево после загрузки.
Я всегда думал, что это просто установило значение для документа страницы.documentelement.scrollleft, и это вступило в силу, но я был разочарован ~
Я потратил время, чтобы проверить сегодня и узнал:
Используйте document.documentelement.scrollleft для установки значения, которое должно быть эффективным, только если вызвано человеческим событием;
Если вы хотите, чтобы страница автоматически прокручивала определенное расстояние при его загрузке, используйте аним jQuery, как показано в следующем примере:
$ ("html, body"). Animate ({"scrollleft": "300px"}, 1000);
$ ("html, body"). Animate ({"scrolltop": "300px"}, 1000);
Демонстрация:
Кода -копия выглядит следующим образом:
<! Doctype html>
<html>
<голова>
<meta charset = "utf-8"/>
<title> Auto Scroll </title>
<meta name = "Keywords" content = ""/>
<meta name = "description" content = ""/>
<script type = "text/javascript" src = "https://www.gamebox.com/js/jquery.js"> </script>
</head>
<тело>
<!-начало контейнера->
<div style = "Высота: 3000px; ширина: 3000px;">
<a href = "javascript :;"> Нажмите </a>
</div>
<!-концом контейнера->
<script type = "text/javascript">
/*window.onload = function () {
window.scroll (0,300);
$ (". Btn"). On ("click", function () {
document.documentelement.scrollleft = "500";
var otop = document.body.scrolltop || document.documentelement.scrolltop;
var oleft = document.body.scrollleft || document.documentelement.scrollleft;
блюд (Oleft);
});
}*/
$ (function () {
$ ("html, body"). Animate ({"scrollleft": "300px"}, 1000);
});
</script>
</body>
</html>