jquery - style - scrolltop scrollheight
scrollTop() devuelve 0 en Firefox, pero no en Chrome (4)
No estoy seguro de si hay alguna otra pregunta al respecto, si es así, me disculpo y no libere a los perros.
Usando el doctype html5 y haciendo una consola rápida. Desactivar mi escucha de desplazamiento que me dice el valor del valor de scrollTop (). Básicamente estoy haciendo esto, así que cuando me desplazo más allá de un punto, cambio la opacidad de un elemento. Lo hago utilizando una solución MVS y no tengo la capacidad de enviar esto a un sitio externo para que pueda ver. Aquí hay un fragmento rápido:
var opacity = 1;
var scrollTop = $(''body'').scrollTop();
if (scrollTop > 200) {
opacity = 0.1;
}
$(''#element).css(''opacity'', opacity);
Si me desplazo en Chrome, obtengo un console.log (scrollTop); mostrando lo que quiero (es decir, 100 por cada pergamino que hago) y mi opacidad desaparece después de presionar 200 scrollTop. Si me desplazo en FF e IE7 +, la var devuelve "0" cada desplazamiento. Si cambio $ (''cuerpo''), scrollTop () a $ (''document''). ScrollTop (); luego obtengo un retorno "nulo" en el desplazamiento.
¿Algunas ideas? ¡Gracias!
Después de cierta frustración con IE9 en el modo peculiar, he encontrado que $(''body'').scrollTop()
funciona de manera confiable en IE9, Chrome 32 y Firefox 26.
Intenta usar var scrollTop = $(document).scrollTop();
Use var scrollTop = $(''html'').scrollTop();
funciona para Firefox
Sin embargo, tendrá que olfatear el navegador (lo sé, detectar características, no husmear, pero no puede detectar esto), porque no funcionará en Chrome, intente aquí:
El reemplazo más fácil / más ligero para la detección del navegador jQuery 1.9?
$(window).scrollTop()
funciona como se esperaba tanto en Firefox como en Chrome.
Para la verificación, ejecute el siguiente jsfiddle en chrome y firefox: http://jsfiddle.net/RBBw5/6/