none
Cómo saber si un elemento se ha terminado de mostrar en pantalla - javascript RRS feed

  • Pregunta

  • Saludos a todos.

    A ver si a alguien se le ocurre algo. Tengo el siguiente problema:

    Necesito saber, con javascript o jquery, cuándo un elemento se ha terminado de mostrar en pantalla.

    Se trata de una tabla que se muestra en pantalla como un ventana popup modal. Tiene un div contenedor principal con el tamaño de todo el viwport, con un z-index de 10000 y  display flex de manera que el div que hace de ventana popup se muestre centrado. Lo que necesito saber son las propiedades clientWidth y offsetWidth del body de la tabla para determinar el ancho de la barra de scroll que es igual a offsetWidth - clientWidth, y aplicar este ancho al margen derecho de otro div.

    Cuando se termina de rellenar la tabla en una función de javascript se añade la clase d-flex al contenedor principal para que se muestre la ventana popup modal.

    El problema es que hasta que la ventana no se ve físicamente en la pantalla me da que ambas propiedades son iguales y recién, es decir, que no hay barra de desplazamiento. cuando aparece en pantalla es que son diferentes porque realmente sí hay una barra de desplazamiento.

    Si pregunto por cualquiera de las propiedades de visibilidad me indican que todo está visible pero realmente todavía no se ha mostrado en la pantalla.

    Inclusive he probado con una extensión del método show de jQuery, pero tampoco me da los resultados que necesito.

    Muchas gracias por la colaboración.

    Cordiales saludos.
    viernes, 26 de febrero de 2021 21:26

Todas las respuestas

  • Hola,

    Gracias por levantar tu consulta en los foros de MSDN.

    Eric Ruiz

    ____________________________

    Por favor recuerde "Marcar como respuesta" las respuestas que hayan resuelto su problema, es una forma común de reconocer a aquellos que han ayudado, y hace que sea más fácil para los otros visitantes encontrar la solución más tarde.

    Si tiene algún cumplido o reclamo sobre el soporte de MSDN siéntase en la libertad de contactar MSDNFSF@microsoft.com.

    viernes, 26 de febrero de 2021 22:52
    Moderador