Skip to content Skip to sidebar Skip to footer

Changing Javascript Object Variable After Time Delay

this.anim= true; How to change this object's variable to false after x seconds?

Solution 1:

this.anim = true;
var that = this; // you store the reference to a `this` in `that` variable,
                 // so you could use it in a callback function. You have
                 // to do that because it has its own `this` defined
setTimeout(function() {
    that.anim = false;
}, x * 1000);

or

this.anim = true;

(function(that){ // you create an IIFE (see http://tinyurl.com/js-iife)
    setTimeout(function() {
        that.anim = false;
    }, x * 1000);
}(this)); // and invoke it with `this` as a parameter, which will be available
          // as `that` in the function body

Post a Comment for "Changing Javascript Object Variable After Time Delay"