Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

115
Visualizações
Cambiar entre dos clases diferentes jQuery

Tiene problemas para hacer funcionar el siguiente código:

 $('#changeMode').button().click(function(){ $('#playfield').toggle(function() { $(this).switchClass("gridView","plainView"); }, function() { $(this).switchClass("plainView","gridView"); }); });

No puedo hacer que cambie la siguiente clase de div.

 <div id="playfield" class="gridView"></div>

¿Algunas ideas?

EDITAR: Probé esto:

 $('#changeMode').button().click(function(){ if ($('#playfield').attr('class') == "gridView"){ $('#playfield').removeClass("gridView"); $('#playfield').addClass("plainView"); } else { $('#playfield').removeClass("plainView"); $('#playfield').addClass("gridView"); } });

Y parece funcionar bien, ¿qué diablos?

over 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

No estaba al tanto de un switchClass, ¿quizás estabas pensando en toggleClass? De todos modos, tenía un código antiguo que usaba esto (estaba teniendo algunos problemas extraños con toggleClass):

 $(this).removeClass("gridView").addClass("plainView"); or $(this).toggleClass("gridView plainView");

y viceversa.

Ejemplo:

 $('#changeMode').button().click(function(){ $('#playfield').toggle(function() { $(this).toggleClass("gridView plainView"); //$(this).removeClass("gridView").addClass("plainView"); }, function() { $(this).toggleClass("plainView gridView"); //$(this).removeClass("plainView").addClass("gridView"); }); });

Pero como otros han sugerido, toggleClass debería funcionar para sus necesidades.

over 4 years ago · Santiago Trujillo Relatório

0

La sintaxis correcta es usar "Uno o más nombres de clase ( separados por espacios )." (de .toggleClass() ) dentro del primer parámetro, en lugar de citar nombres de clase en el primer y segundo parámetro.

p.ej

 $(this).toggleClass("gridView plainView");
over 4 years ago · Santiago Trujillo Relatório

0

solo use toggleClass dos veces hará la magia. toggoleClass referencia a Jquery
This method takes one or more class names as its parameter. In the first version, if an element in the matched set of elements already has the class, then it is removed; if an element does not have the class, then it is added.

en cuanto a su problema.

$('#changeMode').button().click(function(){ $(this).toggleClass('gridView').toggleClass('plainView'); });

ayuda, esto resolverá tu problema.

toggleClass('gridView plainView') en realidad serán alternativas entre
<div class="gridView plainView"> and <div class=" ">. y no alternar entre las dos clases. sin ofender . Espero que esto sirva de ayuda.

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda