2013-05-30 44 views
0

我有一个全局变量,只有当用户输入特定的输入时才会设置为true,并且我希望能够启动一个函数。其中一些输入不通过处理程序,所以我不能使用JQuery change()函数。当布尔变为true时,如何获得一个函数调用的集合?

有关如何解决此问题的任何建议?

+0

更多情况下是必要的在这里。目前为止有什么?你尝试了什么?为什么你没有尝试过的工作? –

+0

除了使用间隔和重复检查变量,或者做大多数人做的事情之外,没有事件检查变量是否发生变化,而不是在输入发生变化时触发该变量。 – adeneo

回答

3

使用定制的getter做别的事情,当值的变化:

myGlobal=true; 


(function(){ 
    var shadow=myGlobal; 
Object.defineProperty(
    window, 
    "myGlobal", 
    { 
    get: function() {return shadow;}, 
    set: function(v){alert('myGlobal is now ' + v); return shadow=v;} 
    } 
); 

}()); 

myGlobal=false; 
myGlobal=true; 

这部作品在老十岁上下的IE,并规定少PERF命中比Object.watch()和polyfills的。

+0

“旧式IE”意味着版本8和9? – Bergi

相关问题