Показать сообщение отдельно
  #1 (permalink)  
Старый 06.03.2013, 08:01
Профессор
Отправить личное сообщение для Shitbox2 Посмотреть профиль Найти все сообщения от Shitbox2
 
Регистрация: 04.10.2010
Сообщений: 571

Покритикуйте реализацию паттерна наблюдатель на jQuery
//Трансляция глобальных событий подписчикам
$.fn.obs = function (eventList) {     
    return this.each(function () {
        for (event in eventList) {
            if (eventList[event] !== null) {
                $(document).on(event, jQuery.proxy(eventList[event], this))
            } else {
                $(document).off(event, jQuery.proxy(eventList[event], this))
            }
        }
    })      
}

//Вызов события
$(document).trigger('event1', data)

//Подписка на события
$('#object').obs({
    'event1': function (e, data) {
        //function 1
    },
    'event2': function (e, data) {
        //function 2
    }
})

Тут, конечно, проблема с отпиской от событий, пока не знаю как решить
Ответить с цитированием