Как-то незаметно для меня обновился jQuery. Причём, версию 1.2.4 я пропустил, поэтому обновился сразу до 1.2.5. Пока полёт нормальный. Так же обновился jQuery UI до версии четвёртой беты. Очень много изменилось в расширении Datepicker. Частично из изменился API:
Version 3.4.x Updates
- Formatting updates to demo page.
- Code optimizations.
- Added Bulgarian translation.
- Starts with a semicolon.
- Fixed scrolled overflow elements.
- Fixed wiki demo in IE and Safari.
- Added lithuanian translation.
- Consolidate formatting parameters for formatDate and parseDate.
- Replace hasClass() with is().
- Allow control characters to be typed (copy/paste).
- Fix width bug for multiple months display.
- Trigger button now toggles date picker.
- Default date is always within min/max date restrictions.
- Use reverse animations for hide based on showAnim setting.
- Added onClose setting.
- Apply both datepicker_currentDay and datepicker_today styles if applicable.
- Default date is not depicted as the current date.
- Fix jump on Next when showing multiple months and selecting in later months.
Functions renamed for jQuery UI v1.5
- attachDatepicker is now datepicker
- removeDatepicker is now datepicker(«destroy»)
- changeDatepicker is now datepicker(«change»)
- disableDatepicker is now datepicker(«disable»)
- enableDatepicker is now datepicker(«enable»)
- isDisabledDatepicker is now datepicker(«isDisabled»)
- showDatepicker is now datepicker(«show»)
- getDateDatepicker is now datepicker(«getDate»)
- setDateDatepicker is now datepicker(«setDate», …)
Version 3.3 Updates
Changes made to the core for constancy with jQuery UI
- Changed $(selector).datepicker() to $(selector).attachDatepicker().
- Changed $.datepicker.enableFor(control) to $(selector).enableDatepicker().
- Changed $.datepicker.disableFor(control) to $(selector).disableDatepicker().
- Changed $.datepicker.isDisabled(control) to $(selector).isDisabledDatepicker().
- Changed $.datepicker.reconfigureFor(control, settings) to $(selector).changeDatepicker(settings).
- Changed $.datepicker.setDateFor(control, date) to $(selector).setDatepickerDate(date).
- Changed $.datepicker.getDateFor(control) to $(selector).getDatepickerDate().
- Changed $.datepicker.showFor(control) to $(selector).showDatepicker().
- Added $(selector).removeDatepicker.
- Updated compatibility file to reflect changes to core functions.
Так же изменились названия некоторых атрибутов.
Пришлось покопаться с расширением Dialog. В данной версии не работает возможность перемещения окна, а так же если попытаться сделать окно модальным – то, скрипт будет выдавать ошибку. Расширение капризничало в Opera и IE. Оказалось, что виновата строка, где переменные определены следующим образом:
var var1 = f1(), var2 = f2(), var3 = var4 = f3()
Вот там, где инициализируются одновременно две переменные, и было проблемное место.
Ручками доработал скрипт, что бы z-index окна не изменялся при клике по нему. Из-за такой реализации некорректно ведет себя следующий алгоритм. В вызываемом окне используется объект Datepicker, и при клике по окну календарь накрывался окном. Как отключить эффект всплывающего события пока не додумался, а найденное решение меня вполне устраивает.
Сам jQuery немного поправился, упакованная версия весит на 1кБ больше, чем версия 1.2.3. А, вот jQuery UI более заметно прибавил в весе. Субъективно jQuery UI стал пошустрее.
Если кто не обновлялся с первых бет, то рекомендую подождать, как я понял совсем скоро грядёт первый RC, где будут исправлены баги, в том числе и те, что я озвучил в заметке.



Datepicker уже обновили.
Комментарий от Петр Гришин — Ноябрь 3, 2008 @ 12:39 дп