Показать сообщение отдельно
  #2 (permalink)  
Старый 16.12.2010, 18:45
Кандидат Javascript-наук
Отправить личное сообщение для Jurasmi Посмотреть профиль Найти все сообщения от Jurasmi
 
Регистрация: 25.11.2008
Сообщений: 115

Решение:
var customEvents = {
		    _handlers : {},
		
		    subscribe: function(event, handler){
		       if(typeof(this._handlers[event])=="undefined")
		           this._handlers[event]=[]; 
		       this._handlers[event].push(handler);
		    },
		
		    fire:function(event, data){
		        if(this._handlers[event]){
		            for(var i = 0; i < this._handlers[event].length; i++){
		                this._handlers[event][i](data);
		            }
		        }
		    }
	};


var myObj1 = new function(){
		this.handler = function(data){
			console.log(data+'1');
		};
		customEvents.subscribe("greatEvent", this.handler);
	};	
	
	
	
var myObj2 = new function(){
		this.handler = function(data){
			console.log(data+'2');
		};
		customEvents.subscribe("greatEvent", this.handler);
	};	
	
	
//что-то где-то произошло
customEvents.fire("greatEvent", 'ta-da');

всем спасибо, все свободны
Ответить с цитированием