Agregue Class a si un DIV tiene más de 4 elementos

Intento agregar clase a cuando

tiene más de 4 elementos

  • text
  • .

    HTML:

       
    • text
    • text
    • text
    • text
    • text

    Significa si

    tiene 5 elementos

  • text
  • y agrega clase al body como . Cualquier cuerpo sabe cómo hacer esto por Jquery . Gracias por adelantado.

    Puedes usar setInterval (solo es necesario si tus li’s son agregados eliminados dinámicamente, puedes omitirlo si no es el caso), y verificar su longitud interna y hacer las acciones respectivas según sea necesario.

     setInterval(function(){ if(jQuery('div.scroll ul > li').length > 4) jQuery('body').addClass('popup'); else jQuery('body').removeClass('popup'); }, 1000); 

    Nota: debe colocar esta secuencia de comandos antes del cierre de la etiqueta del cuerpo o después de los elementos cuya longitud se debe comparar.

    Creo que buscas algo como lo siguiente.

     $(function() { //Will execute as soon as the DOM is loaded addBodyClass(); //Let's say a click function somewhere deletes a LI $("selector").on("click", function() { $('.scroll li:last').remove(); //Now there are 4 LIs which means remove the popup class from body //So, call the function again addBodyClass(); }); }); function addBodyClass() { $('.scroll li').length > 4 && $("body").addClass("popup") || $("body").removeClass("popup"); //The above is the shorter version of if ($('.scroll li').length > 4) { $("body").addClass("popup"); } else { $("body").removeClass("popup"); } } 

    Esto debería funcionar para usted

      
      Intereting Posts