¿Qué diferencia hay entre scroll window y document?

Iniciado por Leguim, 1 Diciembre 2019, 22:00 PM

0 Miembros y 1 Visitante están viendo este tema.

Leguim

Buenos días,

tenía un problema y era que con una función lo que hacía era que si se pasaba el scroll sobre un elemento "<div id="el_div">" quería que muestre un console.log('1');

el problema era que a cada momento sin importar si pasaba el scroll por el "<div id="el_div">" se ejecutaba...

Código (javascript) [Seleccionar]

            $(document).on('scroll', function()
            {
                if($(this).scrollTop() >= $('#el_div').offset().top - $(this).height())
                {
                    console.log('1');
                }
            });


El tema es que conseguí corregir esto cambiando "document" por "window"

Código (javascript) [Seleccionar]

            $(window).on('scroll', function()
            {
                if($(this).scrollTop() >= $('#el_div').offset().top - $(this).height())
                {
                    console.log('1');
                }
            });


No veo que diferencia hay entre haberlo hecho con document o window... más allá del problema que tenía usando document.

Tengo otra duda y es que digamos si yo estoy detectando el scroll que existe en un div y otro en el cuerpo (window)
si yo hago "$(window).unbind('scroll');" que sirve para eliminar el evento...
¿me eliminará también un evento en algun scroll que tenga en un div en especifico?

por ejemplo

Código (javascript) [Seleccionar]

            $('#div_scroll').on('scroll', function()
            {
                console.log('scrolleando...');
            });