Satch3000 Satch3000 - 5 months ago 19
Javascript Question

JQuery Detect class changes

I am using a plugin that added a class

open
to
.slide-out-div
when opened.

So I am trying to change some css if the open is detected.

What I need to do is

IF

$('.slide-out-div **open**') IS Detected then

$('.otherDiv').css('top','0px');


Not sure how to put this together...

Answer

There is no event of class-added, you will need to track it yourself...

It can be done with an infinite loop with setTimeout to check if the class has changed.

function checkForChanges()
{
    if ($('.slide-out-div').hasClass('open'))
        $('.otherDiv').css('top','0px');
    else
        setTimeout(checkForChanges, 500);
}

You can call the function when you want, or onDOM ready:

$(checkForChanges);