#jquery #triggers #bind #event-driven
#jquery #триггеры #привязка #управляемый событиями
Вопрос:
Я создал программу, которая, как мне кажется, могла бы выиграть от перехода к использованию событий jQuery (bind() и trigger()) вместо типичной структуры программирования, вызывающей функции. Например, вместо:
//device changed
//(diffs holds key: {old_val: 'old value', new_val: 'new value'} pairs)
DEVICES.update(device, diffs)
DIAGRAM.update(device, diffs)
TABLES.update(DEVICES.$table, device, diffs)
/*
...
*/
//device changed - some other code location
DEVICES.update(device, diffs);
DIAGRAM.update(device, diffs);
TABLES.update(DEVICES.$table, device, diffs);
Я мог бы написать:
//DEVICES.update(), DIAGRAM.update, and TABLES.update have all been bound to
//DEVICES.$container's device_changed custom event (in their respective modules)
//device changed
//(diffs holds key: {old_val: 'old value', new_val: 'new value'} pairs)
DEVICES.$container.trigger('device_changed', [device, diffs]);
/*
...
*/
//device changed - some other code location
DEVICES.$container.trigger('device_changed', [device, diffs]);
Я учусь эффективно использовать bind() и trigger(), но в основном просто придумываю это по ходу дела. Есть ли хорошие примеры того, как программировать / структурировать код, следуя этому событийному стилю с помощью jQuery?
Комментарии:
1. Я пытаюсь научиться сам. Чтение michaelhamrah.com/blog/2008/12 /… — yoan.dosimple.ch/blog/2008/04/30 и reynoldsftw.com/2009/04 /…
2. Боже, они выглядят как отличное место для начала! Спасибо!