Page 47 - jQuery для начинающих
P. 47

Пространство имен


             Как вы уже узнали, когда мы хотим создать/удалить свой обработчик событий, мы пишем

             следующий код:


                    // создаем свой обработчик
                    $('.class').on('click', function(){
                        // что-то делаем

                    });
                    // удаляем все обработчики
                    $('.class').unbind();


             Но как всегда, есть ситуации когда нам необходимо отключить не все обработчики
             (как пример, надо отключить обработку какого-то контрола определенным плагином),
             в этом случае нам на помощь приходят пространства имен, использовать их достаточно
             легко:


                    // создаём обработчик
                    $('.class').on('click.namespace', function(){
                        // что-то делаем
                    });

                    // вызываем обработчик
                    $('.class').trigger('click.namespace');

                    // вызываем все обработчики без пространства имён
                    $('.class').trigger('click!');
                    // удаляем все обработчики click в данном пространстве имён
                    $('.class').unbind('click.namespace');



             Еще примерчик, вешаем обработчик, который выводит текст в консоль:


                    $('.class').on('click.namespace', function(){
                        console.log('bang');

                    });
                    // вызываем событие, наш обработчик сработает
                    $('.class').trigger('click.namespace');
                    // тоже работает

                    $('.class').trigger('click');
                    // событие из другого пространства имён, наш обработчик не будет вызван
                    $('.class').trigger('click.other');


                                                                                                         47


                                                                                        www.trk.kg
   42   43   44   45   46   47   48   49   50   51   52