КАК

Как домой

Меню

Панель значков Значок меню Аккордеон Вкладки Вертикальные вкладки Заголовки вкладок Вкладки на всю страницу Вкладки при наведении Верхняя навигация Отзывчивый Topnav Панель навигации с иконками Меню поиска Панель поиска Фиксированная боковая панель Навигация по страницам Адаптивная боковая панель Полноэкранная навигация Меню вне холста Кнопки Hover Sidenav Боковая панель с иконками Горизонтальное меню прокрутки Вертикальное меню Нижняя навигация Отзывчивая нижняя навигация Навигационные ссылки на нижней границе Ссылки меню с выравниванием по правому краю Ссылка на меню по центру Ссылки меню одинаковой ширины Фиксированное меню Полоса слайда вниз при прокрутке Скрыть панель навигации при прокрутке Уменьшить панель навигации при прокрутке Липкая панель навигации Панель навигации на изображении Выпадающие списки при наведении Нажмите «Раскрывающиеся списки». Каскадное выпадающее меню Выпадающий список в Topnav Выпадающий список в Сиденаве Выпадающий список Resp Navbar Меню поднавигации Выпадающий Мега Меню Мобильное меню Меню штор Свернутая боковая панель Свернутая боковая панель Пагинация Панировочные сухари Группа кнопок Вертикальная группа кнопок Липкая социальная панель Навигация по таблеткам Адаптивный заголовок

Картинки

Слайд-шоу Галерея слайд-шоу Модальные изображения Лайтбокс Адаптивная сетка изображений Сетка изображений Галерея вкладок Наложение изображения Слайд с наложенным изображением Масштаб наложения изображения Заголовок наложения изображения Значок наложения изображения Эффекты изображения Черно-белое изображение Текст изображения Текстовые блоки изображения Прозрачный текст изображения Полное изображение страницы Форма на изображении Изображение героя Размытие фонового изображения Изменить Bg при прокрутке Параллельные изображения Округлые изображения Изображения аватара Адаптивные изображения Центрировать изображения Миниатюры Граница вокруг изображения Встретить команду Прилипшее изображение Перевернуть изображение Встряхнуть изображение Портфолио Галерея Портфолио с фильтрацией Увеличение изображения Стекло лупы изображения Ползунок сравнения изображений Фавикон

Кнопки

Кнопки оповещения Кнопки контура Кнопки разделения Анимированные кнопки Затухающие кнопки Кнопка на изображении Кнопки социальных сетей Читать дальше Читать меньше Кнопки загрузки Кнопки загрузки Кнопки таблетки Кнопка уведомления Кнопки со значками Кнопки «Следующая/предыдущая» Кнопка «Дополнительно» в навигации Кнопки блокировки Текстовые кнопки Круглые кнопки Кнопка прокрутки вверх

Формы

Форма входа Форма регистрации Форма оформления заказа Форма обратной связи Форма входа через социальную сеть Регистрационная форма Форма с иконками Новостная рассылка Сложенная форма Отзывчивая форма Всплывающая форма Встроенная форма Очистить поле ввода Скрыть цифровые стрелки Скопировать текст в буфер обмена Анимированный поиск Кнопка поиска Полноэкранный поиск Поле ввода в панели навигации Форма входа в Navbar Пользовательский флажок/радио Пользовательский выбор Переключить переключатель Установите флажок Обнаружение Caps Lock Кнопка триггера при входе Проверка пароля Переключить видимость пароля Многоступенчатая форма Автозаполнение Отключить автозаполнение Отключить проверку орфографии Кнопка загрузки файла Проверка пустого ввода

Фильтры

Список фильтров Таблица фильтров Фильтрующие элементы Выпадающий список фильтров Сортировать список Таблица заклинаний

Столы

Полосатый стол под зебру Центральные столы Стол во всю ширину Параллельные столы Адаптивные таблицы Сравнительная таблица

Более

Полноэкранное видео Модальные коробки Удалить модальное Лента новостей Индикатор прокрутки Индикаторы прогресса Панель навыков Ползунки диапазона Подсказки Отображение элемента при наведении Всплывающие окна Складной Календарь HTML включает Список дел Погрузчики Звездный рейтинг Рейтинг пользователей Эффект наложения Контактные чипы Открытки Флип-карта Карточка профиля Карточка товара Оповещения Вызывать Примечания Этикетки Круги Стиль HR Купон Группа списка Список без маркеров Отзывчивый текст Вырезанный текст Светящийся текст Фиксированный нижний колонтитул Липкий элемент Равная высота Клирфикс Отзывчивые поплавки Закусочная Полноэкранное окно Прокрутка рисования Гладкая прокрутка Градиентная прокрутка Bg Липкий заголовок Уменьшить заголовок при прокрутке Таблица цен Параллакс Соотношение сторон Отзывчивые фреймы Переключить Нравится/Не нравится Переключить скрыть/показать Переключить темный режим Переключить текст Переключить класс Добавить класс Удалить класс Активный класс В виде дерева Удалить свойство Автономное обнаружение Найти скрытый элемент Перенаправить веб-страницу Увеличить при наведении Флип-бокс Центрировать по вертикали Центральная кнопка в DIV Переход при наведении Стрелки Формы Ссылка для скачивания Полноразмерный элемент Окно браузера Пользовательская полоса прокрутки Скрыть полосу прокрутки Показать/принудительно включить полосу прокрутки Внешний вид устройства Редактируемая граница Цвет заполнителя Цвет выделения текста Цвет пули Вертикальная линия Разделители Анимированные иконки Таймер обратного отсчета Печатная машинка Страница скоро появится Сообщения чата Всплывающее окно чата Разделенный экран Отзывы Счетчик секций Слайд-шоу цитат Закрываемые элементы списка Типичные точки останова устройства Перетаскиваемый элемент HTML Медиа-запросы JS Подсветка синтаксиса JS-анимации Длина строки JS JS Возведение в степень Параметры JS по умолчанию Получить текущий URL-адрес Получить текущий размер экрана Получить элементы iframe

Веб-сайт

Создать бесплатный веб-сайт Сделать сайт Сделать статический сайт Сделать сайт (W3.CSS) Сделать веб-сайт (BS3) Сделать веб-сайт (BS4) Сделать веб-сайт (BS5) Создание и просмотр веб-сайта Создайте сайт с деревом ссылок Создать портфолио Создать резюме Сделать сайт ресторана Сделать бизнес-сайт Сделать веб-книгу Веб-сайт центра Контактная информация О странице Большой заголовок Пример веб-сайта

Сетка

2 столбца 3 столбца 4 столбца Расширяющаяся сетка Представление списка в виде сетки Смешанная компоновка столбцов Карты столбцов Схема «зигзаг» Макет блога

Google

Google диаграммы Гугл шрифты Сочетания шрифтов Google Гугл настроить аналитику

Преобразователи

Преобразовать вес Преобразование температуры Преобразование длины Преобразование скорости

Блог

Получить работу разработчика Станьте фронтенд-разработчиком.

Как сделать - Автозаполнение


Узнайте, как создать автозаполнение.


Автозаполнение

Начните вводить:



Создать форму автозаполнения

Шаг 1) Добавьте HTML:

Пример

<!--Make sure the form has the autocomplete function switched off:-->
<form autocomplete="off" action="/action_page.php">
  <div class="autocomplete" style="width:300px;">
    <input id="myInput" type="text" name="myCountry" placeholder="Country">
  </div>
  <input type="submit">
</form>

Шаг 2) Создайте массив JavaScript:

Пример

Массив всех стран мира:

var countries = ["Afghanistan","Albania","Algeria","Andorra","Angola","Anguilla","Antigua &amp; Barbuda","Argentina","Armenia","Aruba","Australia","Austria","Azerbaijan","Bahamas","Bahrain","Bangladesh","Barbados","Belarus","Belgium","Belize","Benin","Bermuda","Bhutan","Bolivia","Bosnia &amp; Herzegovina","Botswana","Brazil","British Virgin Islands","Brunei","Bulgaria","Burkina Faso","Burundi","Cambodia","Cameroon","Canada","Cape Verde","Cayman Islands","Central Arfrican Republic","Chad","Chile","China","Colombia","Congo","Cook Islands","Costa Rica","Cote D Ivoire","Croatia","Cuba","Curacao","Cyprus","Czech Republic","Denmark","Djibouti","Dominica","Dominican Republic","Ecuador","Egypt","El Salvador","Equatorial Guinea","Eritrea","Estonia","Ethiopia","Falkland Islands","Faroe Islands","Fiji","Finland","France","French Polynesia","French West Indies","Gabon","Gambia","Georgia","Germany","Ghana","Gibraltar","Greece","Greenland","Grenada","Guam","Guatemala","Guernsey","Guinea","Guinea Bissau","Guyana","Haiti","Honduras","Hong Kong","Hungary","Iceland","India","Indonesia","Iran","Iraq","Ireland","Isle of Man","Israel","Italy","Jamaica","Japan","Jersey","Jordan","Kazakhstan","Kenya","Kiribati","Kosovo","Kuwait","Kyrgyzstan","Laos","Latvia","Lebanon","Lesotho","Liberia","Libya","Liechtenstein","Lithuania","Luxembourg","Macau","Macedonia","Madagascar","Malawi","Malaysia","Maldives","Mali","Malta","Marshall Islands","Mauritania","Mauritius","Mexico","Micronesia","Moldova","Monaco","Mongolia","Montenegro","Montserrat","Morocco","Mozambique","Myanmar","Namibia","Nauro","Nepal","Netherlands","Netherlands Antilles","New Caledonia","New Zealand","Nicaragua","Niger","Nigeria","North Korea","Norway","Oman","Pakistan","Palau","Palestine","Panama","Papua New Guinea","Paraguay","Peru","Philippines","Poland","Portugal","Puerto Rico","Qatar","Reunion","Romania","Russia","Rwanda","Saint Pierre &amp; Miquelon","Samoa","San Marino","Sao Tome and Principe","Saudi Arabia","Senegal","Serbia","Seychelles","Sierra Leone","Singapore","Slovakia","Slovenia","Solomon Islands","Somalia","South Africa","South Korea","South Sudan","Spain","Sri Lanka","St Kitts &amp; Nevis","St Lucia","St Vincent","Sudan","Suriname","Swaziland","Sweden","Switzerland","Syria","Taiwan","Tajikistan","Tanzania","Thailand","Timor L'Este","Togo","Tonga","Trinidad &amp; Tobago","Tunisia","Turkey","Turkmenistan","Turks &amp; Caicos","Tuvalu","Uganda","Ukraine","United Arab Emirates","United Kingdom","United States of America","Uruguay","Uzbekistan","Vanuatu","Vatican City","Venezuela","Vietnam","Virgin Islands (US)","Yemen","Zambia","Zimbabwe"];

Шаг 3) Добавьте CSS:

Контейнер должен иметь «относительное» позиционирование.

Пример

* { box-sizing: border-box; }
body {
  font: 16px Arial;
}
.autocomplete {
  /*the container must be positioned relative:*/
  position: relative;
  display: inline-block;
}
input {
  border: 1px solid transparent;
  background-color: #f1f1f1;
  padding: 10px;
  font-size: 16px;
}
input[type=text] {
  background-color: #f1f1f1;
  width: 100%;
}
input[type=submit] {
  background-color: DodgerBlue;
  color: #fff;
}
.autocomplete-items {
  position: absolute;
  border: 1px solid #d4d4d4;
  border-bottom: none;
  border-top: none;
  z-index: 99;
  /*position the autocomplete items to be the same width as the container:*/
  top: 100%;
  left: 0;
  right: 0;
}
.autocomplete-items div {
  padding: 10px;
  cursor: pointer;
  background-color: #fff;
  border-bottom: 1px solid #d4d4d4;
}
.autocomplete-items div:hover {
  /*when hovering an item:*/
  background-color: #e9e9e9;
}
.autocomplete-active {
  /*when navigating through the items using the arrow keys:*/
  background-color: DodgerBlue !important;
  color: #ffffff;
}


Шаг 4) Добавьте JavaScript:

Пример

function autocomplete(inp, arr) {
  /*the autocomplete function takes two arguments,
  the text field element and an array of possible autocompleted values:*/
  var currentFocus;
  /*execute a function when someone writes in the text field:*/
  inp.addEventListener("input", function(e) {
      var a, b, i, val = this.value;
      /*close any already open lists of autocompleted values*/
      closeAllLists();
      if (!val) { return false;}
      currentFocus = -1;
      /*create a DIV element that will contain the items (values):*/
      a = document.createElement("DIV");
      a.setAttribute("id", this.id + "autocomplete-list");
      a.setAttribute("class", "autocomplete-items");
      /*append the DIV element as a child of the autocomplete container:*/
      this.parentNode.appendChild(a);
      /*for each item in the array...*/
      for (i = 0; i < arr.length; i++) {
        /*check if the item starts with the same letters as the text field value:*/
        if (arr[i].substr(0, val.length).toUpperCase() == val.toUpperCase()) {
          /*create a DIV element for each matching element:*/
          b = document.createElement("DIV");
          /*make the matching letters bold:*/
          b.innerHTML = "<strong>" + arr[i].substr(0, val.length) + "</strong>";
          b.innerHTML += arr[i].substr(val.length);
          /*insert a input field that will hold the current array item's value:*/
          b.innerHTML += "<input type='hidden' value='" + arr[i] + "'>";
          /*execute a function when someone clicks on the item value (DIV element):*/
              b.addEventListener("click", function(e) {
              /*insert the value for the autocomplete text field:*/
              inp.value = this.getElementsByTagName("input")[0].value;
              /*close the list of autocompleted values,
              (or any other open lists of autocompleted values:*/
              closeAllLists();
          });
          a.appendChild(b);
        }
      }
  });
  /*execute a function presses a key on the keyboard:*/
  inp.addEventListener("keydown", function(e) {
      var x = document.getElementById(this.id + "autocomplete-list");
      if (x) x = x.getElementsByTagName("div");
      if (e.keyCode == 40) {
        /*If the arrow DOWN key is pressed,
        increase the currentFocus variable:*/
        currentFocus++;
        /*and and make the current item more visible:*/
        addActive(x);
      } else if (e.keyCode == 38) { //up
        /*If the arrow UP key is pressed,
        decrease the currentFocus variable:*/
        currentFocus--;
        /*and and make the current item more visible:*/
        addActive(x);
      } else if (e.keyCode == 13) {
        /*If the ENTER key is pressed, prevent the form from being submitted,*/
        e.preventDefault();
        if (currentFocus > -1) {
          /*and simulate a click on the "active" item:*/
          if (x) x[currentFocus].click();
        }
      }
  });
  function addActive(x) {
    /*a function to classify an item as "active":*/
    if (!x) return false;
    /*start by removing the "active" class on all items:*/
    removeActive(x);
    if (currentFocus >= x.length) currentFocus = 0;
    if (currentFocus < 0) currentFocus = (x.length - 1);
    /*add class "autocomplete-active":*/
    x[currentFocus].classList.add("autocomplete-active");
  }
  function removeActive(x) {
    /*a function to remove the "active" class from all autocomplete items:*/
    for (var i = 0; i < x.length; i++) {
      x[i].classList.remove("autocomplete-active");
    }
  }
  function closeAllLists(elmnt) {
    /*close all autocomplete lists in the document,
    except the one passed as an argument:*/
    var x = document.getElementsByClassName("autocomplete-items");
    for (var i = 0; i < x.length; i++) {
      if (elmnt != x[i] && elmnt != inp) {
      x[i].parentNode.removeChild(x[i]);
    }
  }
}
/*execute a function when someone clicks in the document:*/
document.addEventListener("click", function (e) {
    closeAllLists(e.target);
});
}

Шаг 5) Инициируйте эффект автозаполнения на «myInput»:

Пример

Передайте массив стран в качестве второго параметра функции автозаполнения:

<script>
autocomplete(document.getElementById("myInput"), countries);
</script>