"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo detectar cambios en la altura DIV o los atributos CSS con jQuery?

¿Cómo detectar cambios en la altura DIV o los atributos CSS con jQuery?

Publicado el 2024-11-09
Navegar:547

How to Detect Changes in DIV Height or CSS Attributes with jQuery?

Determinación de cambios en la altura DIV o atributos CSS

Cuando se trabaja con páginas web, a menudo es necesario realizar un seguimiento de los cambios en la altura u otros CSS atributos de los elementos. jQuery proporciona varias opciones para abordar esta necesidad.

Seguimiento de eventos con 'change()':

Mientras que el evento 'change()' se usa principalmente para elementos de entrada , se puede personalizar para detectar cambios de CSS. Sin embargo, este enfoque implica verificar periódicamente las propiedades CSS del elemento y activar un evento si difieren de los valores anteriores:

var $element = $("#elementId");
var lastHeight = $("#elementId").css('height');
function checkForChanges()
{
    if ($element.css('height') != lastHeight)
    {
        alert('xxx');
        lastHeight = $element.css('height'); 
    }

    setTimeout(checkForChanges, 500);
}

Enlace de evento personalizado con 'bind()':

Una solución más eficiente implica crear un evento personalizado y vincularlo al elemento deseado:

$('#mainContent').bind('heightChange', function(){
        alert('xxx');
    });


$("#btnSample1").click(function() {
    $("#mainContent").css('height', '400px');
    $("#mainContent").trigger('heightChange'); //<====
    ...
});    

En este caso, activamos el evento 'heightChange' cada vez que se modifica la altura del div 'mainContent'.

Nota:

  • La frecuencia de las comprobaciones en la función 'checkForChanges()' se puede ajustar para adaptarse a requisitos específicos.
  • Los métodos 'bind()' y 'trigger()' están bien documentados en la documentación de jQuery para referencia adicional.
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3