Me gustaría usar JS para calcular cuánto se desplazó un usuario hacia abajo en una página.
Estoy tratando de usar una combinación de scrollY y document.body.offsetHeight
Pero lo que encuentro es que scrollY en la parte inferior de una página devuelve 6883 pero document.body.offsetHeight devuelve un valor de 7392 , lo que me deja en un lugar donde no puedo calcular qué tan lejos se desplazó un usuario. abajo el documento.
https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/offsetHeight
Por lo general, offsetHeight es una medida en píxeles de la altura CSS del elemento, incluidos los bordes, el relleno y las barras de desplazamiento horizontales (si se representan). No incluye la altura de pseudoelementos como ::before o ::after. Para el objeto del cuerpo del documento, la medida incluye la altura total del contenido lineal en lugar de la altura CSS del elemento. Los elementos flotantes que se extienden por debajo de otro contenido lineal se ignoran.
Entonces, si entiendo esto correctamente, está teniendo en cuenta el documento a la vista de la ventana gráfica, por lo que debería devolver el valor de 6883 , lo mismo si un usuario se desplaza por toda la página.
¿Qué propiedad usa para calcular la vista desplazable completa de un documento, para comparar con el valor máximo de scrollY ?
Intente usar document.body.offsetHeight-window.innerHeight , debería devolver el valor desplazable esperado.