Авто-заполнение с Twitter Typeahead.js

Мне кажется, или Twitter с каждым днём всё больше и больше увлекается Open Source-ом (свободным программным обеспечением)? После всех тех лет, когда их не было слышно и видно, они подарили сообществу разработчиков Bootstrap, и теперь постоянно публикуют какие-то новые проекты. Плагин, который мы рассмотрим, позволит прикрепить “авто-заполнение” к любому текстовому полю. Источником авто-загрузки может быть как хардкодированная информация, так и данные, полученные из локального хранилища в JSON файле.

Typeahead.js работает на основе jQuery 1.9 и выше. Разработчики Twitter создали данный плагин исключительно для своих нужд - чтобы облегчить процесс внедрения автозагрузки данных. Пару дней назад они опубликовали исходники на Github под MIT лицензией, которая позволяет использовать данный компонент как в коммерческих, так и не в коммерческих целях. Инициатива внести свой вклад в код приветствуется.

Чем же Typeahead.js отличается от кучи подобных плагинов, которых в сети ну просто завались? Данный плагин очень просто внедрить в ваш сайт и задать прямо в HTML коде источник подстановки, конечно же если список возможных вариантов невелик. Но я бы не стал писать данную статью, если бы Typeahead.js мог только это! В любом случае вам могут пригодиться все варианты использования.

Давайте рассмотрим пример, когда возможные варианты захардкодированны прямо в HTML странице:

$('#input').typeahead([
	{
        name: 'планеты',
        local: [ "Меркурий", "Венера", "Земля", "Марс", "Юпитер", "Сатурн", "Уран", "Нептун" ]
	}
]);

В добавок Typeahead.js поддерживает языки, которые читаются справа-налево.

Далее, давайте рассмотрим, как получить данные из JSON файла, которые вы можете использовать в качестве локального хранилища данных. Это поможет вашему скрипту работать быстрее.

$('#input').typeahead([
{
    name: 'countries',
    prefetch: '/countries.json',
    }
]);

Также Typeahead.js даёт нам возможность осуществлять запросы к базе данных, через конструкцию ?q=, используя параметр remote. Данный способ будет работать медленнее, т.к. для каждого элемента input будет совершаться свой запрос.

Пример:

$('input.twitter-search').typeahead([
  {
    name: 'accounts',
    prefetch: 'https://twitter.com/network.json',
    remote: 'https://twitter.com/accounts?q=%QUERY'
  }
]);

Как видите, несколько способов извлечения данных (prefetch - подгрузка из json файла, remote - извлечение данных по запросу) можно комбинировать и использовать одновременно. Подобная конфигурация зависит от ваших нужд. В общем, вот таким простым способом на одной и той же странице, вы можете создать несколько разных авто-загрузчиков для ваших текстовых полей.

Таким образом, пользователям будет намного приятней пользоваться вашим сайтом, т.к. JavaScript будет делать полработы за них - подскажет всевозможные варианты. Ещё одной характерной особенностью данного плагина является то, что он позволяет давать подсказки не только в виде одиночных слов, но также в виде целых html блоков. Примеры подобных подстановок вы сможете найти на официальной страничке Typeahead.js.

Typeahead.js поставляется со специально подготовленным CSS кодом. Данный код не влияет на визуальное представление, а используется для реализации эффекта выпадающего списка и позиционирования возможных вариантов ответов. Если вы собираетесь воспользоваться данным плагином, то это нужно учитывать.

Если вы часто пользуетесь Bootstrap, и вам новый плагин Typeahead.js приглянулся больше, чем то, что уже заложено в фрэймворке, то тут беспокоиться не надо. Подключайте Bootstrap, затем Typeahead.js и наслаждайтесь расширенным функционалом.

Источник: http://feedproxy.google.com/~r/ruseller/CdHX/~3/spblJobtea0/lessons.php

Читать комменты и комментировать

Добавить комментарий / отзыв



Защитный код
Обновить

Авто-заполнение с Twitter Typeahead.js | | 2013-04-05 23:22:27 | | Статьи Web-мастеру | | Мне кажется, или Twitter с каждым днём всё больше и больше увлекается Open Source-ом (свободным программным обеспечением)? После всех тех лет, когда их не было слышно и видно, они подарили сообществу | РэдЛайн, создание сайта, заказать сайт, разработка сайтов, реклама в Интернете, продвижение, маркетинговые исследования, дизайн студия, веб дизайн, раскрутка сайта, создать сайт компании, сделать сайт, создание сайтов, изготовление сайта, обслуживание сайтов, изготовление сайтов, заказать интернет сайт, создать сайт, изготовить сайт, разработка сайта, web студия, создание веб сайта, поддержка сайта, сайт на заказ, сопровождение сайта, дизайн сайта, сайт под ключ, заказ сайта, реклама сайта, хостинг, регистрация доменов, хабаровск, краснодар, москва, комсомольск |
 
Поделиться с друзьями: