javascript - change - add attribute jquery
¿Cómo detectar cuándo el usuario se ha desplazado a un área determinada en la página utilizando jQuery? (3)
Posible duplicado:
¿Cómo detectar el desplazamiento de la página a un punto determinado en jQuery?
Compruebe si el elemento es visible después de desplazarse
¿Cómo puedo detectar cuando el usuario ha alcanzado este div:
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<div id="theTarget">I have been reached</div>
EDITAR
Tengo la respuesta de esta pregunta:
Compruebe si el elemento es visible después de desplazarse
Así que acabo de hacer esto:
function isScrolledIntoView(elem)
{
var docViewTop = $(window).scrollTop();
var docViewBottom = docViewTop + $(window).height();
var elemTop = $(elem).offset().top;
var elemBottom = elemTop + $(elem).height();
return ((elemBottom >= docViewTop) && (elemTop <= docViewBottom) && (elemBottom <= docViewBottom) && (elemTop >= docViewTop));
}
$(window).scroll(function() {
if(isScrolledIntoView($(''#theTarget'')))
{
alert(''visible'');
}
});
Creo que puedes lograr tu objetivo comparando los valores de tu posición div
var divPosition = $("#theTarget").offset().top;
y la posición de desplazamiento de la ventana
var scrollPosition = window.scrollY;
Hay un complemento de jQuery que creo que hace exactamente lo que estás preguntando.
http://plugins.jquery.com/project/appear
$(''#theTarget'').appear(function() {
$(this).text(''Hello world'');
});
También se vincula con el tamaño y el tamaño de la ventana inicial ... etc, etc, etc.
$(document).on(''scroll'', function() {
if($(this).scrollTop()>=$(''#theTarget'').position().top){
yourActionHere();
}
})
Compara el scroll y la posición de tu elemento. Que llame a su función. No requiere plugin.