Комментарии 13
НЛО прилетело и опубликовало эту надпись здесь
Ну я бы не сказал, что это однозначно правильно (и что это неправильно тоже бы не сказал), т.к. даже если заглянуть в код jQuery:
То мы увидим, что во-первых комментарий к этой функции: «For internal use only», а во-вторых она все равно вызывает jQuery.data
// For internal use only.
_data: function( elem, name, data ) {
return jQuery.data( elem, name, data, true );
},
То мы увидим, что во-первых комментарий к этой функции: «For internal use only», а во-вторых она все равно вызывает jQuery.data
+1
> $(elem).data('events')
Странно, а у вас какой версии jQuery?
Странно, а у вас какой версии jQuery?
0
НЛО прилетело и опубликовало эту надпись здесь
jQuery версии 1.4.2, и, в принципе то, он работать должен, просто я пишу приложение под SmartTV, где требуется использовать именно jQuery, который записан в телевизор. И даже при том, что это 1.4.2, на некоторых старых телевизорах работает он все равно не совсем правильно, т.к. браузер в телевизоре — это как IE7, только со своими причудами.
+3
jQuery записан в телевизор
Будущее здесь.
А как насчет работы с этими обработчиками? И есть ли возможность через этот массив грубо говоря, повесить обработчик на обработчик?
Извините если глупость спросил, но иногда такая задача возникает, особенно при работе со сторонними плагинами.
Будущее здесь.
А как насчет работы с этими обработчиками? И есть ли возможность через этот массив грубо говоря, повесить обработчик на обработчик?
Извините если глупость спросил, но иногда такая задача возникает, особенно при работе со сторонними плагинами.
+4
Спасибо, очень интересная статья.
Просто хочу оставить здесь ссылку на Visual Event: www.sprymedia.co.uk/article/Visual+Event (визуализация обработчиков jQuery). Возможно кто-то не знает.
P.S.: Полагаю, что конкретно в вашем случае он вероятнее всего не помог бы.
Просто хочу оставить здесь ссылку на Visual Event: www.sprymedia.co.uk/article/Visual+Event (визуализация обработчиков jQuery). Возможно кто-то не знает.
P.S.: Полагаю, что конкретно в вашем случае он вероятнее всего не помог бы.
+1
Этот кусок немного про другое.
Это если у нас есть элемент
То выполнив
Мы получим результат foo
Это я так, для справки, т.к. в статье ничего не написано о том что на самом деле делает строчка кода из самого начала статьи.
$(elem).data('events');
Это если у нас есть элемент
<div data-events="foo"></div>
То выполнив
$('div').data('events');
Мы получим результат foo
Это я так, для справки, т.к. в статье ничего не написано о том что на самом деле делает строчка кода из самого начала статьи.
+4
Да, в вашем случае так и будет.
Но, если элементу не прописать «data-events», то
вернет именно объект с обработчиками.
Способ получения обработчиков, описанный в самом начале статьи подходит, например, для получения обработчиков для объекта «document», т.к. врятли вы ему пропишите «data-events».
А в вашем приведенном примере обработчики можно получить так:
Но, если элементу не прописать «data-events», то
$('div').data('events');
вернет именно объект с обработчиками.
Способ получения обработчиков, описанный в самом начале статьи подходит, например, для получения обработчиков для объекта «document», т.к. врятли вы ему пропишите «data-events».
А в вашем приведенном примере обработчики можно получить так:
$._data( $('div').get(0) , 'events');
+1
метод описанный автором показывает обработчики которые устанавливались с помощью jQuery.
т.е. если повесить обработчик на чистом JS то его там не увидите
т.е. если повесить обработчик на чистом JS то его там не увидите
+4
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Где jQuery хранит обработчики событий