修改JQuery对象

时间:2013-09-28 13:28:47

标签: javascript jquery

每次调用插件的main-function时,我都有一个JQuery插件创建一个新对象:

函数调用:

new BpNotification( options );

功能本身:

function BpNotification( options ) { 
    this.init();
}

BpNotification.prototype = {
    init: function() {

        this.t = setTimeout(function(){}, 5000);

    }
}

是否可以在创建对象后从“outside”修改此超时选项“t”?

2 个答案:

答案 0 :(得分:1)

您可以根据需要更改t

function BpNotification( options ) { 
    this.init();
}

BpNotification.prototype = {
    init: function() {
       this.t = setTimeout(function(){alert('default');}, 500);
    }
}

var Bpn = new BpNotification();
clearTimeout(Bpn.t);
Bpn.t = setTimeout(function(){alert('updated!');}, 500);

DEMO

答案 1 :(得分:0)

您可能希望在原型对象中创建一个setter function来更改setTimeout值:

BpNotification.prototype = {
    init: function() {
    },
    updateTimeout: function(newVal){
        this.t = setTimeout(function(),newVal);
    }
};

var bpNot = new BpNotification();

bpNot.init();
bpNot.updateTimeout(10000);