Да, это называется шаблон проектирования Observer.В этом отношении он не изолирован от JQuery или даже JavaScript.Многие шаблоны проектирования могут быть реализованы на большинстве языков программирования.
DevShop - это структура шаблонов проектирования для javascript.Их шаблон наблюдателя выглядит следующим образом:
НАБЛЮДАТЕЛЬ
(function(){
DevShop.Me({
Observer:function(obj){
var observer=function(){
this.onRegister=function(){};
this.notify=function(eventName,observable){
this.observable=observable;
if(typeof this[eventName]==="function")
try{this[eventName]();}catch(e){}
};
};
return DevShop.SingletonFactory({extend:observer,instance:obj});
}
});
})();
НАБЛЮДАЕМЫЙ
(function(){
DevShop.Me({
Observable:function(obj){
var observable=function(){
this.observers=[];
this.addObserver=function(o){
if(typeof o==="function"||typeof o==="object"){
if(typeof o.notify==="function"){
this.observers.push(o);
if(typeof o.onRegister==="function")
try{o.onRegister();}catch(e){}
}
}
};
this.notifyObservers=function(eventName){
var size=this.observers.length;
for(var x=0;x<size;x++){
try{
this.observers[x].notify(eventName,this);
}catch(e){}
}
};
};
return DevShop.SingletonFactory({extend:observable,instance:obj});
}
});
})();
Вы можете прочитать больше ошаблон проектирования Observer здесь: http://en.wikipedia.org/wiki/Observer_pattern