Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

296
Views
¿Pueden dos nombres de clase de icono de arranque funcionar uno al lado del otro (prioridad de nombre de clase)?

Tengo un nombre de clase llamado (bi bi-clipboard), quiero cambiar el nombre de la clase a (bi-clipboard-check) cuando hago clic en él, por lo que el problema es que agregó el nombre de la clase junto a la otra clase nombre como este:

antes de hacer clic:

 <i class="bi bi-clipboard" onclick="changeIcon(this)"></i>

Después de hacer clic:

 <i class="bi bi-clipboard bi-clipboard-check" onclick="changeIcon(this)"></i>

Método:

 function changeIcon(icon){ icon.classList.toggle("bi-clipboard-check"); }

Vi en otro lugar que estaba usando fontawesome cuando haces clic en él, la clase alterna mediante el método javascript toggle(), y funciona, pero el mío no funciona ya que dos nombres de clase están uno al lado del otro. Cualquier solución será apreciada.

about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

si puede usar jQuery, puede alternar las clases por separado; vea la demostración de JQUERY a continuación

 $(function() { $(".bi").on('click', function() { $(this).toggleClass("bi-clipboard-check"); $(this).toggleClass("bi-clipboard"); console.log($(this).prop('classList').value); }); });
 .bi { height: 100px; width: 100px; display: inline-block; background-color: green; border: 1px solid red; }
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <i class="bi bi-clipboard"></i>

O bien, puede alternar las dos clases por separado.

Vea la demostración simple de JS a continuación

 function changeIcon(thisEl) { thisEl.classList.toggle("bi-clipboard-check"); thisEl.classList.toggle("bi-clipboard"); console.log(thisEl.classList.value); }
 .bi { height: 100px; width: 100px; display: inline-block; background-color: green; border: 1px solid red; }
 <i class="bi bi-clipboard" onclick="changeIcon(this)"></i>

about 4 years ago · Juan Pablo Isaza Report

0

Si no quieres usar jQuery,

usando el método contains()

puede verificar si classlist contiene bi-clipboard y reemplazarlo con bi-clipboard-check y viceversa

 function changeIcon(icon) { if (icon.classList.contains("bi-clipboard")) { icon.classList.replace("bi-clipboard", "bi-clipboard-check"); } else if (icon.classList.contains("bi-clipboard-check")) { icon.classList.replace("bi-clipboard-check", "bi-clipboard"); } }

usando el método toggle()

 function changeIcon(icon) { icon.classList.toggle("bi-clipboard-check"); icon.classList.toggle("bi-clipboard"); }
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!