Foro de elhacker.net

Programación => Desarrollo Web => Mensaje iniciado por: TamZamb en 30 Septiembre 2016, 14:51 pm



Título: Como saber que una clase fue agregada (si esta fue agregada con javascript)
Publicado por: TamZamb en 30 Septiembre 2016, 14:51 pm
Hola! estoy trabajando en un proyecto y tengo una duda.

El caso es que uso un plugin para javascript y este me agrega una clase en un div y después lo borra de ese y lo cambia a otro. Es plugin es para un slide.

Entonces me gustaría agregar un .load() pero solo en el momento que el div tiene la clase agregada.

Por si no me explico bien:
En ese ejemplo quiero que se agrege la class 'border' pero solo cuando tenga la clase 'red'. Pero claro como javascript solo se ejecuta una vez no identifica el momento exacto que se agrega la clase 'red'.

Alguna idea??

http://codepen.io/TamZam/pen/RGkvRm

Código
  1. $('div').click(function() {
  2.    $(this).toggleClass('red');
  3. });
  4.  
  5. if ($('div').hasClass("red")) {
  6.  $("div").addClass('border');
  7. }

Código
  1. .box {
  2.    width: 250px;
  3.    height: 100px;
  4.    border: 1px #000 solid;
  5. }
  6.  
  7. .red {
  8.    background: red;
  9. }
  10. .border {
  11.  border: 6px #000 solid;
  12. }
  13.  

Código
  1. <div class='box'></div>
  2.  


Título: Re: Como saber que una clase fue agregada (si esta fue agregada con javascript)
Publicado por: [u]nsigned en 30 Septiembre 2016, 15:13 pm
Podes usar los triggers de Jquery, te quedaria algo asi:

Código
  1. $('div').click(function() {
  2.    $(this).toggleClass('red');
  3.    $(document).trigger('claseCambiada');
  4. });
  5.  
  6. $(document).on('claseCambiada',function(){
  7.  if ($('div').hasClass("red")) {
  8.    $("div").addClass('border');
  9.  }
  10. });
  11.  


Título: Re: Como saber que una clase fue agregada (si esta fue agregada con javascript)
Publicado por: TamZamb en 30 Septiembre 2016, 16:36 pm
Gracias! Pero esto no lo puedo usar porque yo no soy la cambia la clase lo hace el plugin, entonces tiene que detectarlo solo


Título: Re: Como saber que una clase fue agregada (si esta fue agregada con javascript)
Publicado por: TamZamb en 5 Octubre 2016, 10:34 am
Hola! encontré una solución! Dejo el link por si a alguien le sirve.

http://stackoverflow.com/questions/17172470/how-to-detect-class-changing-by-domattrmodified