Como saber que una clase fue agregada (si esta fue agregada con javascript)

Iniciado por TamZamb, 30 Septiembre 2016, 14:51 PM

0 Miembros y 1 Visitante están viendo este tema.

TamZamb

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 (javascript) [Seleccionar]

$('div').click(function() {
    $(this).toggleClass('red');
});

if ($('div').hasClass("red")) {
  $("div").addClass('border');
}


Código (css) [Seleccionar]

.box {
    width: 250px;
    height: 100px;
    border: 1px #000 solid;
}

.red {
    background: red;
}
.border {
  border: 6px #000 solid;
}


Código (html) [Seleccionar]

<div class='box'></div>

[u]nsigned

Podes usar los triggers de Jquery, te quedaria algo asi:

Código (javascript) [Seleccionar]

$('div').click(function() {
    $(this).toggleClass('red');
    $(document).trigger('claseCambiada');
});

$(document).on('claseCambiada',function(){
  if ($('div').hasClass("red")) {
    $("div").addClass('border');
  }
});

No hay atajo ante la duda, el misterio se hace aquí...
Se hace carne en cada uno, el misterio es existir!

TamZamb

Gracias! Pero esto no lo puedo usar porque yo no soy la cambia la clase lo hace el plugin, entonces tiene que detectarlo solo