Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Конец страницы скролл (https://javascript.ru/forum/events/74324-konec-stranicy-skroll.html)

Quper 01.07.2018 18:08

Конец страницы скролл
 
Мне необходимо вызвать событие когда пользователь докрутит страницу до самого низа, как определить что пользователь достиг конца документа?

На чистом JS необходимо!

рони 01.07.2018 19:34

Quper,
https://learn.javascript.ru/metrics-window

j0hnik 01.07.2018 20:43

onscroll = function(){
	if(window.scrollY+1 >= document.documentElement.scrollHeight-document.documentElement.clientHeight) alert('Конец прокрутки');
};

рони 01.07.2018 21:01

j0hnik,
:) а если DOCTYPE забудут или window.scrollY меньше scrollМах или ie ?

j0hnik 01.07.2018 21:54

onscroll = function(){
	var scrollHeight = Math.max(
		document.body.scrollHeight, document.documentElement.scrollHeight,
		document.body.offsetHeight, document.documentElement.offsetHeight,
		document.body.clientHeight, document.documentElement.clientHeight
	);

	if(window.scrollY+1 >= scrollHeight - innerHeight) alert('Конец прокрутки');
};


рони,

рони 01.07.2018 22:22

j0hnik,
сделай макет, открой в браузере, снизу открой консоль, проверь работу скрипта.

j0hnik 01.07.2018 22:37

Цитата:

Сообщение от рони
сделай макет, открой в браузере, снизу открой консоль, проверь работу скрипта.

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
</head>

<body style="height: 3000px">
<script>

onscroll = function(){
	var scrollHeight = Math.max(
		document.body.scrollHeight, document.documentElement.scrollHeight,
		document.body.offsetHeight, document.documentElement.offsetHeight,
		document.body.clientHeight, document.documentElement.clientHeight
	);

	if(window.scrollY >= scrollHeight - innerHeight) alert('Конец прокрутки');
};
  </script>
</body>
</html>

таки работает, в каком браузере у вас проблемы?

рони 01.07.2018 22:40

Цитата:

Сообщение от j0hnik
таки работает, в каком браузере у вас проблемы?

во всех

j0hnik 01.07.2018 23:49

странно, у меня все ровно тоже во всех.
давайте разбираться друг мой ))
какая версия ОС и версии браузеров?
с кодом выше что нибудь делали?

рони 02.07.2018 00:02

j0hnik,
Windows 10 версия 1803, браузеры последние версии, пост №7, алерта нет в конце прокрутки.
напишите, если не трудно, у кого-то ещё работает это?


Часовой пояс GMT +3, время: 00:39.