.4.5.6.7…
Тихо и незаметно зарелизился jQuery:
jquery-1.2.3.js, jquery-1.2.3.min.js, jquery-1.2.3.pack.js
Поскольку официального анонса пока нету, перечислю “вкусности” сам:
Вот официальный анонс, а ниже мой:
первое, оно же главное – namespace-ы в event-ах.
$(‘#cal’)
.bind(‘click.calendar’,fnclk)
.bind(‘change.calendar’,fnchg)
.bind(‘change.maskedinput’,fn);
Накой ляд оно сдалось?
Код становиться на порядок понятнее для чтения и отладки (разумеется если авторы многочисленных плагинов “прочухают” фишку). Теперь когда мне надоест функционал календаря на input-е, я могу убрать его:
$(‘#cal’).unbind(‘.calendar’);
change от maskedinput продолжит функционировать.
Обработчики “обычных” событий будут так же обрабатывать все “вложенные” события, т.е. в приведённом выше примере:
$(‘#cal’).bind(‘change’,fn);
fn вызовется при срабатывании как change.calendar, так и change.maskedinput; если же потребуется обработать ТОЛЬКО change, обработчик будет необходимо вызвать добавить так:
$(‘#cal’).bind(‘change!’,fn);
$.data() теперь вызывает события setData и getData что позволит удобно “подменять” сохранённые данные и должным образом обрабатывать их изменения в плагинах…
Остальные изменения – исправление некоторых на мой взгляд незначительных багов.
вместо этой строки $(’#cal’).unbind(’.calendar’);
ты хотел написать $(’#cal’).unbind(’click.calendar’); или действитльно так и нужно и я чего-то не понял?
Просто когда я сначала глянул на строку $(’cal’).bind(’change’,fn); то понял что надо писать $(‘cal’) а не $(‘#cal’) а потом увидел ‘cange!’, и стало ясно что все дело в восклицательном зхнаке )
Обработчик вызывается не .bind(‘change!’,fn), а .trigger(‘change!’,fn)