Недавно у меня (если быть точным, то не совсем у меня) возникла потребность вставить такую штуку, как таймпикер в один проект.
Судьба и добрые люди навели меня сначала на ужасный циферблат на основе MooTools, а потом и на jQuery
Timepicker plugin.
В силу того, что я пользуюсь именно jQuery, плагин был осмотрен и даже встроен в проект, однако тут же я столкнулся с рядом проблем.
Во-первых, требует всю библиотеку ui (а это 200кило кода) и нигде (я не нашел) нет зависимостей, дабы можно было вычленить лишние килобайты кода.
Во-вторых, он требует несколько css файлов, которые что-то наследуют от ui.core.css.
В-третьих, он требует парочку приличных спрайтов.
После подключения всей этой истории я получил не до конца работающий таймпикер (проблематичность стилизации из-за наличия других элементов ui библиотеки) и заторможенность страницы. Это не говоря о том, что он мне не нравится наличием AM/PM переключателей, жесткой (ну или не очень, я не помню его конфиг) привязкой к 15 минутным интервалам и странным внешним видом.
Так что пришлось писать свой велосипед, который был успешно интегрирован в проект. Естественно, меня посетила мысль, что, возможно, найдутся такие люди, которым за каким-то чёртом может пригодиться мой небольшой кривоватый скрипт. Поэтому я потратил ещё часик на оформление демоверсии скрипта. Посмотреть (и вытащить все исходники) вы можете здесь —
public.xfenix.ru
P.S. Допилено упадническими методами до работоспобного состояния в браузерах IE (6,7), Opera, FF 3, Google Chrome. Для IE пришлось внести кондишнл комменты, а для оперы крепко поморчиться (и все равно баг остался — бекграунд наносится лишь на половину li при клике). Если кто объяснит почему возникли такие ошибки и как их побороть чуть более чем полностью, то буду благодарен до конца века.
P.P.S. Если вдруг каким-то чудом ты, читатель, вовсе не зубр, ехидно посмеивающийся над моими исходниками, а начинающий javascript-наркоман и тебе требуется описание по подключению и опциям этого скрипта, то ты можешь сказать мне об этом в коментариях и тогда я отреагирую и допишу пару абзацев текста.