1 марта 2012 г. jQuery Релизы EN In English

jQuery. Написал плагин jquery-cleverfocus

Зарелизил сегодня плагин для jQuery, который при вводе на сайте текста пользователем "в никуда" перехватывает это и по истечению лимита введенных символов выбрасывает собранные данные в нужный нам инпут и ставит на него фокус.

Плагин совместим с версией jQuery 1.7.1, так как тестировался только на нём.

А зачем вообще это?

Случай #1

Пользователь приходит на сайт, видит форму поиска, набирает искомое слово (при этом он чаще всего смотрит в клавиатуру), подняв голову он понимает что набирал текст "в никуда", сильно бесится, ставит фокус, вводит несколько символов, проверяет что у него получается набирать текст "куда надо" и со спокойной душой продолжает набирать искомое слово.

Тут вы скажете "Эй! надо ставить фокус после загрузки DOM!", ан нет, это тоже плохое решение, разберем второй кейс.

Случай #2

Пользователь приходит на сайт, ему не интересна форма поиска, он хочет поскроллить/полистать (Left/Right, Up/Down, PgUp/PgDown, Home/End и т.д.) страницу с помощью клавиатуры (пользователей, которые пользуются ноутбуками без использования мыши достаточно много), а так как у нас стоит фокус в форме поиска, то он снова обламывается.

Для решения этих вот двух кейсов и был создан плагин jquery-cleverfocus.

Пример использования

Допустим у вам есть форма поиска с id="search_input":

<input id="search_input" />

То для неё следует использовать плагин так:

$("#search_input").cleverfocus({
    keypress_limit: 3
});

В поставку входит functional_test.html, на котором вы можете проверить плагин, также в целях демонстрации я разместил плагин на adw0rd.github.com/jquery-cleverfocus.

Почему он так называется?

Сначала, я дал ему имя "jquery-autofocus", но потом поискал в гугле это название и нашёл плагин с таким же названием, которой призван эмулировать атрибут autofocus из HTML5 в HTML меньших версий.

Потом я решил назвать его "jquery-smartfocus", но и тут поджидало меня разочарование, так как есть и такой плагин.

В итоге, назвал его по "человечному" - cleverfocus.

Комментарии

В Opera не работает.

Пофиксил, тестировал в 11-ой версий под Linux

Воот, теперь работает. Вот только чем оно лучше варианта сразу сделать focus() на нужном элементе?

А, понял. Да, есть юзкейс. Мелочь, но нужная.

Охуенно!

Было бы хорошо туда добавить поддержку clipboard-paste, но что-то не охото

не работает демка!

Починил

Оставьте свой комментарий

Markdown