A diferencia de otras coordenadas del sistema en el navegador es de arriba a abajo, significa que la parte superior del navegador es y = 0.
Hay dos propiedades del elemento DOM para obtener la posición de un elemento en la página. Las propiedades son element.offsetTop
y element.offsetHeight
Se puede calcular el espacio entre el elemento y la parte inferior de la página mediante el cálculo de element.offsetTop
y window.innerHeight
.
var space = window.innerHeight - element.offsetTop
si se quiere calcular el espacio entre la parte inferior de su elemento y la parte inferior de la ventana, entonces es necesario agregar su altura elemento también.
var space = window.innerHeight - element.offsetTop + element.offsetHeight
Este cálculo a veces es necesario. Piensa que tienes un posicionamiento basado en porcentajes y quieres saber la posición de tu elemento por píxeles para hacer algo. Por ejemplo, usted tiene un div posicionado como esto:
div{
width:300px;
height:16.2%;
position:absolute;
top: 48.11%;
border:3px dotted black;
}
entonces usted quiere saber cuando el div se encuentra cerca de la ventana del navegador para cambiar su color:
var div = document.querySelector('div'),
space = innerHeight - div.offsetTop + div.offsetHeight;
window.onresize = function(){
space = innerHeight - div.offsetTop + div.offsetHeight;
if(space < 200){
div.style.background = 'blue';
}
};
Fiddle
Así que quieres encontrar la distancia entre el * abajo * del elemento y la parte inferior de la página? – Ben
¡sí! eso es lo que quiero :) – user979582