Могу ли я зарегистрироваться / запустить свое собственное событие? - PullRequest
2 голосов
/ 09 января 2012

Допустим, я хотел бы вызвать пользовательское событие, что-то вроде:

var foo = 5;

if(foo == 5){
    event(window,'fooIsFive');
}

, а затем

$(window).live('fooIsfive',function(){
    alert('hey! foo is five!');
});

(Пожалуйста, извините за слабое воображение прямо сейчас.)

Это возможно? Если нет, возможен ли подобный подход?

Ответы [ 3 ]

3 голосов
/ 09 января 2012

Вы можете попробовать это:

$(window).on('fooIsFive', function() { // on = jQ1.7, use bind for other versions
    alert('hey! foo is five!');
});

var foo = 5;
if (foo == 5) {
    $(window).trigger('fooIsFive');
}

Пример скрипки

0 голосов
/ 09 января 2012

Используйте backbone.js - http://documentcloud.github.com/backbone/

События объекта находятся в основе backbone.js.с его помощью вы можете поднять архитектуру своего приложения Js на совершенно новый уровень.

0 голосов
/ 09 января 2012

да, вы можете:

$(window).bind('eventName',function(e,a,b){
   console.log(a,b);
});
$(window).triggerHandler('eventName',['arg1','arg2']);

Вот демоверсия: http://jsfiddle.net/gion_13/5TrH9/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...