Page 95 - jQuery для начинающих
P. 95
События data
Ещё чуть-чуть информации «к сведению» – при вызове метода data() происходит ряд
событий:
— getData – когда вы пытаетесь получить значение какого-либо значения
— setData – когда устанавливаете значение
— changeData – сразу после изменения значения
При этом только обрабатывая событие getData вы можете хоть как-то повлиять на
происходящее:
$('#my').on('getData', function(event, prop) {
this; // наш искомый элемент
event; // jQuery.Event
prop; // ключ
return 42; // возвращаем другое значение
})
При обработке события setData мы лишь в роли наблюдателей:
$('#my').on('setData', function(event, prop, value) {
prop; // ключ
value; // значение
})
При обработке события changeData нам тоже выпала роль наблюдателей, но изменить
происходящее мы всё же можем:
$('#my').on('changeData', function(event, prop, value) {
// workaround
jQuery.data(this, prop, 42);
})
События setData, getData и changeData не всплывают.
Для «обхода» этих событий можно использовать jQuery.data()
Наглядный пример на странице events.data.html
95
www.trk.kg