THE BELL

Есть те, кто прочитали эту новость раньше вас.
Подпишитесь, чтобы получать статьи свежими.
Email
Имя
Фамилия
Как вы хотите читать The Bell
Без спама

Здравствуйте, дорогие читатели блога. Сегодня представляю Вам полезную подборку бесплатных JQuery слайдеров с примерами . Если Вы всё таки надумали поставить слайдер изображений на свой ресурс, эта подборка Вам очень пригодится, и, поверьте, вам есть с чего выбрать. Тем более все слайдеры с примерами, и каждый из них Вы сможете попробовать в действии. В общем не буду отвлекать, выбирайте:-)

Простой JQuery слайдер изображений

Самый обычный и не большой слайдер миниатюр на Вашем сайте.

Слайдер с миниатюрами на JQuery

Очень простой и интересный слайдер с миниатюрами, который подойдёт практически для любого дизайна.

Красивый слайдер для сайта

Большой и очень красивый слайдер изображений, с интересным перелистыванием текста.

Обычный JQuery слайдер

Самый обычный и простой слайдер на Ваш ресурс

Большой слайдер с описанием

Эффектный слайдер мимо которого нереально пройти.

JQuery слайдер картинок и описанием

Постой и стильный слайдер текста с изображениями и с красивым эффектом перелистывания.

Скроллинг изображений с подсказками

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

JQuery слайдер с большими стрелками

Интересный слайдер с большими розовыми стрелками, которые меняют размер за счёт увеличения изображения.

Если вам нужно добавить на свой сайт качественный JQuery-слайдер изображений, то в этой статье вы найдете описание нужных плагинов. Несмотря на то, что JQuery существенно упростил работу с JavaScript , мы по-прежнему нуждаемся в плагинах, чтобы ускорить процесс создания веб-дизайна.

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

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

Последние тенденции, такие как адаптивный дизайн, очень важны для веб-проектов, независимо от того, реализуете ли вы плагин или скрипт. Все эти элементы делают каждый из этих плагинов очень гибкими. Всё, что вышло в 2014 году включено в этот список.

JQuery-слайдеры изображений

Jssor Responsive Slider

Недавно я наткнулась на этот функциональный JQuery -слайдер, и смогла воочию убедиться, что он справляется со своей работой очень хорошо. Он содержит в себе безграничные возможности, которые можно расширить за счет открытого исходного кода слайдера:

  • Адаптивный дизайн;
  • Более 15 параметров настройки;
  • Более 15 эффектов смены изображения;
  • Галерея изображений, карусели, поддержка полноэкранного размера;
  • Вертикальный ротатор баннеров, список слайдов;
  • Поддержка видео.

Демо | Скачать

PgwSlider — адаптивный слайдер на основе JQuery / Zepto

Единственной задачей данного плагина является демонстрация слайдов изображений. Он очень компактный, так как размер JQuery-файлов составляет всего 2,5 КБ, что позволяет подгружать его действительно быстро:

  • Адаптивный макет;
  • SEO-оптимизация;
  • Поддержка разными браузерами;
  • Простые переходы изображений;
  • Размер архива всего 2,5 КБ.

Демо | Скачать

Jquery Vertical News Slider

Гибкий и полезный JQuery -слайдер, предназначенный для новостных ресурсов с перечнем публикаций с левой стороны и выводом изображения справа:

  • Адаптивный дизайн;
  • Вертикальная колонка переключения новостей;
  • Расширенные заголовки.

Демо | Скачать

Wallop Slider

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

  • Адаптивный макет;
  • Простой дизайн;
  • Различные варианты смены слайдов;
  • Минимальный код JavaScript ;
  • Размер всего 3KБ.

Демо | Скачать

Flat-style Polaroid gallery

Галерея в стиле разбросанных на столе документов с гибким макетом и красивым дизайном должна заинтересовать многих из вас. Больше подходит для планшетов и больших дисплеев:

  • Адаптивный слайдер;
  • Плоский дизайн;
  • Случайная смена слайдов;
  • Полный доступ к исходному коду.

Демо | Скачать

A-Slider

Демо | Скачать

HiSlider – HTML5, jQuery и WordPress слайдер изображений

HiSlider представил новый бесплатный плагин JQuery-слайдера , с помощью которого можно создавать разнообразные галереи изображений с фантастическим переходами:

  • Адаптивный слайдер;
  • Не требует знания программирования;
  • Несколько удивительных шаблонов и скинов;
  • Красивые эффекты переходов;
  • Поддержка разных платформ;
  • Совместимость с WordPress, Joomla, Drupal;
  • Возможность отображения контента разных типов: изображений, видео YouTube и видео Vimeo;
  • Гибкая настройка;
  • Полезные дополнительные функции;
  • Неограниченный объем отображаемого контента.

Демо |Скачать

Wow Slider

WOW Slider — это адаптивный JQuery-слайдер изображений с удивительными визуальными эффектами (домино, поворот, размытие, переворот и вспышка, вылет, жалюзи ) и профессиональными шаблонами.

WOW Slider поставляется вместе с мастером установки, что позволяет создавать фантастические слайдеры за считанные секунды без необходимости разбираться в коде и редактировать изображения. Также доступны для скачивания версии плагина под Joomla и WordPress :

  • Полностью адаптивный;
  • Поддержка всех браузеров и всех типов устройств;
  • Поддержка сенсорных устройств;
  • Простая установка на WordPress ;
  • Гибкость в настройке;
  • SEO -оптимизированный.

Демо |Скачать

Nivo Slider – бесплатный jQuery-плагин

Nivo Slider известен всему миру как самый красивый и простой в использовании слайдер изображений. Плагин Nivo Slider является бесплатным и выпускается по лицензии MIT :

  • Требуется JQuery 1.7 и выше;
  • Красивые эффекты перехода;
  • Простой и гибкий в настройке;
  • Компактный и адаптивный;
  • Открытый код;
  • Мощный и простой;
  • Несколько различных шаблонов;
  • Автоматическая обрезка изображения.

Демо |Скачать

Простой JQuery слайдер с технической документацией

Идея была навеяна слайдерами от Apple , в которых несколько маленьких элементов могут вылетать с различными эффектами анимации. Разработчики попытались воплотить эту концепцию с учетом минимальных требований для создания простого дизайна интернет-магазина, в котором «вылетающие » элементы представляют собой различные категории:

  • Адаптивный макет;
  • Минималистичный дизайн;
  • Различные эффекты выпадения и смены слайдов.

Демо |Скачать

Полноразмерный JQuery-слайдер изображений

Очень простой слайдер, занимающий 100% ширины страницы и подстраивающийся под размеры экранов мобильных устройств. Он работает с CSS переходами, а изображения «укладываются» вместе с анкорами. Анкор может быть заменен или удален, если вы не хотите привязывать к изображению ссылку.

При установке слайдер разворачивается на 100% ширины экрана. Также он может автоматически уменьшает размер изображений слайдов:

  • Адаптивный JQuery -слайдер;
  • Полноразмерный;
  • Минималистичный дизайн.

Демо |Скачать

Elastic Content Slider + пособие

Elastic Content Slider автоматически регулирует ширину и высоту в зависимости от размеров родительского элемента. Это простой JQuery-слайдер . Он состоит из слайд-зоны вверху, и панели навигационных вкладок в нижней части. Слайдер подстраивает свою ширину и высоту в соответствии с размерами родительского контейнера.

При просмотре на маленьких по диагонали экранах вкладки навигации превращаются в маленькие иконки:

  • Адаптивный дизайн;
  • Прокрутка кликом мыши.

Демо |Скачать

Free 3D Stack Slider

Экспериментальный слайдер, пролистывающий изображения в 3D . Два стека напоминают стопки бумаги, из которых при пролистывании изображения выводятся в центр слайдера:

  • Адаптивный дизайн;
  • Flip -переход;
  • 3D -эффекты.

Демо |Скачать

Fullscreen Slit Slider на основе JQuery и CSS3 + руководство

Из руководства вы узнаете, как создать слайдер с изюминкой: идея заключается в том, чтобы «разрезать » и вывести в таком виде текущий слайд, в то время, когда вы открываете следующее или предыдущее изображение. Используя JQuery и CSS -анимацию, мы можем создавать уникальные эффекты переходов:

  • Адаптивный дизайн;
  • Сплит-переход;
  • Полноэкранный слайдер.

Демо |Скачать

Unislider – очень маленький JQuery-слайдер

Никаких ненужных наворотов и разметки, размер менее 3КБ. Используйте любой HTML-код для своих слайдов, расширяйте его с помощью CSS . Все, что связано с Unslider , размещается на GitHub :

  • Поддержка различными браузерами;
  • Поддержка клавиатуры;
  • Регулировка по высоте;
  • Адаптивный дизайн;
  • Поддержка сенсорного ввода.

Демо | Скачать

Minimal Responsive Slides

Простой и компактный плагин (размер всего 1 Кб ), который создает адаптивный слайдер, используя элементы внутри контейнера. ResponsiveSLides.js работает с большим количеством браузеров, включая все версии IE от IE6 и выше:

  • Полностью адаптивный;
  • Размер 1 КБ;
  • CSS3 переходы с возможностью запуска через JavaScript ;
  • Простая разметка с использованием маркированного списка;
  • Возможность настройки эффектов переходов и длительности просмотра одного слайда;
  • Поддерживает возможность создания нескольких слайд-шоу;
  • Автоматическая и ручная прокрутка.

Демо |Скачать

Camera — бесплатный JQuery слайдер

Camera — плагин с множеством эффектов переходов, адаптивным макетом. Прост в настройке, поддерживается мобильными устройствами:

  • Полностью адаптивный дизайн;
  • Подписи;
  • Возможность добавления видео;
  • 33 различных цвета иконок.

Демо |Качать

SlidesJS, адаптивный JQuery плагин

SlidesJS — это адаптивный плагин для JQuery (1.7.1 и выше ) с поддержкой сенсорных устройств и CSS3-переходов . Поэкспериментируйте с ним, попробуйте несколько готовых примеров, которые помогут вам разобраться, как добавить SlidesJS в свой проект:

  • Адаптивный дизайн;
  • CSS3 -переходы;
  • Поддержка сенсорных устройств;
  • Прост в настройке.

Демо | Скачать

BX Jquery Slider

Это бесплатный адаптивный JQuery слайдер:

  • Полностью адаптивный — подстраивается под любое устройство;
  • Горизонтальная, вертикальная смена слайдов;
  • Слайды могут содержать изображения, видео или HTML -контент;
  • Расширенная поддержка сенсорных устройств;
  • Использование CSS -переходов для слайд-анимации (аппаратное ускорение );
  • API обратных вызовов и полностью публичные методы;
  • Небольшой размер файла;
  • Прост в реализации.

Демо |Скачать

FlexSlider 2

Лучший адаптивный слайдер. Новая версия была доработана с целью увеличения скорости работы, компактности.

Демо | Скачать

Galleria — адаптивная фотогалерея на основе JavaScript

Galleria используется на миллионах сайтов для создания галереи изображений в высоком качестве. Количество позитивных отзывов о ее работе просто зашкаливает:

  • Полностью бесплатный;
  • Режим полноэкранного просмотра;
  • 100% адаптивный;
  • Не требуется опыта программирования;
  • Поддержка iPhone , IPad и других сенсорных устройств;
  • Flickr , Vimeo , YouTube и многое другое;
  • Несколько тем.

Демо | Скачать

Blueberry — простой адаптивный JQuery-слайдер изображений

Представляю вам JQuery-слайдер изображений, написанный специально для адаптивного веб-дизайна. Blueberry — это экспериментальный плагин слайдера изображений с открытым исходным кодом, который был написан специально для работы с адаптивными шаблонами.

Галереи изображений и слайдеры – одни из самых популярных форматов jQuery. Благодаря им вы можете добавить на сайт необходимый объем визуального контента, экономя при этом ценное место.

Галереи и слайдеры делают страницу менее загруженной, но все же позволяют добавить все изображения, необходимые для передачи послания. Особенно полезны они будут для и интернет-магазинов.

В сегодняшней статье мы собрали для вас лучшие галереи изображений и слайдеры jQuery.

Для их установки достаточно добавить выбранные плагины в раздел head HTML страницы вместе с библиотекой jQuery и настроить их согласно документации (всего пара строчек кода).

Выбирайте, какой из этих элементов идеально впишется в ваш проект.

1. Bootstrap Slider

Bootstrap Slider – бесплатный, оптимизированный под мобильные устройства слайдер изображений с прокруткой прикосновением и смахиванием. Он будет потрясающе смотреться на любом экране и в любом браузере. Вы можете загрузить в слайдеры изображения, видео, текст, миниатюры и кнопки.

2. Product Preview Slider

Product Preview Slider воплощает в себе весь потенциал jQuery, он отлично встраивается в любой интерфейс. Также вас порадует качество и чистота кода этого плагина.

3. Expandable Image Gallery

Expandable Image Gallery – потрясающий плагин, который одним кликом мышки превращается в полноэкранную галерею. Его можно использовать для раздела “О нас” или для просмотра информации о товарах.

4. Fotorama

Fotorama – плагин отзывчивой галереи jQuery, который работает как для десктоп, так и для мобильных браузеров. Он предлагает множество опций навигации: миниатюры, прокрутку, кнопки “вперед” и “назад”, автоматический показ слайд-шоу и маркеры.

5. Immersive Slider

Immersive Slider позволяет создавать уникальный опыт просмотра слайдов, похожий на слайдер Google TV. Вы можете изменить фоновое изображение, которое будет размыто для сохранения фокуса на основных фото.

6. Leastjs

Leastjs – отзывчивый jQuery плагин, который поможет вам создать потрясающую галерею. При наведении курсора на изображение, появляется текст, при нажатии окно разворачивается на весь экран.

7. Sliding Panels Template

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

8. Squeezebox Portfolio Template

Squeezebox Portfolio Template предлагает motion-эффекты для портфолио. При наведении курсора на основное изображение (или блок) появляются привязанные элементы.

9. Shuffle Images

Shuffle Images – потрясающий отзывчивый плагин, который позволит вам создать галерею с меняющимися при наведении курсора изображениями.

10. Free jQuery Lightbox Plugin

Free jQuery Lightbox Plugin поможет вам показать одно или несколько изображений на одной странице. Также их можно будет увеличить и вернуть к исходному размеру.

11. PgwSlider – Responsive slider for jQuery

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

12. Scattered Polaroids Gallery

Scattered Polaroids Gallery – потрясающий слайдер, выполненный в плоском дизайне. Его элементы хаотично движутся при переключении изображений, что выглядит потрясающе.

13. Bouncy Content Filter

Bouncy Content Filter – идеальное решение для и портфолио. Этот плагин позволяет пользователям быстро переходить из одной категории в другую.

14. Simple jQuery Slider

Simple jQuery Slider оправдывает свое название. Этот плагин сочетает в себе элементы JavaScript, HTML5 и CSS3. В демо по умолчанию доступна только загрузка текста, но если внести несколько изменений, можно будет добавить и визуальный контент.

15. Glide JS

Glide JS – простой, быстрый и отзывчивый jQuery слайдер. Его легко настроить, к тому же плагин не займет много места.

16. Fullscreen drag-slider with parallax

Этот потрясающий jQuery слайдер с возможностью загрузки изображений и текста подойдет для любого сайта. Он порадует пользователей легким parallax эффектом и медленным появлением текста.

В этой статье рассмотрим процесс создания легкого, простого и адаптивного слайдера для сайта с помощью CSS и JavaScript.

Исходные коды и подключение слайдера к сайту

Проект слайдера расположен на GitHub по этому адресу . Данный слайдер распространяется под лицензией MIT. Его можно использовать бесплатно как в личных проектах, так и в коммерческих. Поблагодарить автора и поддержать дальнейшее развитие слайдера можно на .

Основные характеристики слайдера:

  • адаптивный;
  • лёгкий (без jQuery);
  • простой (с минимальным набором функций);
  • наличие механизма автоматического смена слайдов через определенные промежутки времени;
  • универсальный (можно использовать для текстовой информации, изображений, отзывов, товаров и др.).

Подключение слайдера к странице осуществляется посредством выполнения следующих действий:

  • вставить в необходимое место html код слайдера;
  • подключить файл со стилями или добавить их в существующий файл; также стили можно вставить прямо на страницу;
  • подключить js-скрипт слайдера или вставить его в существующий файл; также код можно добавить прямо на страницу.

Демо слайдера расположено на этой странице .

Инициализация и настройка слайдера

Инициализация карусели осуществляется посредством вызова функции slideShow и указания ей в качестве первого аргумента селектора, определяющего слайдер в документе:

// инициализация элемента.slider в качестве карусели slideShow(".slider");

Кроме селектора функции slideShow можно передать дополнительные параметры, все они указываются в формате объекта посредством 2 параметра:

// инициализация элемента.slider в качестве карусели и настройка её с помощью дополнительных параметров slideShow(".slider", { isAutoplay: false, // false (по умолчанию) или true directionAutoplay: "next", // "next" (по умолчанию) или "prev" delayAutoplay: 5000, // 5000 (по умолчанию) или любое другое число isPauseOnHover: true // true (по умолчанию) или false });

Назначение ключей:

  • isAutoplay – определяет, необходимо ли инициализировать слайдер с автоматической сменой элементов (по умолчанию этот ключ имеет значение false);
  • directionAutoplay – определяет направление для механизма автоматической смены слайдов (по умолчанию "next"); для изменения направления установите "prev";
  • delayAutoplay – задержка в миллисекундах перед процессом автоматической сменой одного слайда на другой (по умолчанию 5000 мс);
  • isPauseOnHover – определяет необходимо ли останавливать автоматическую смену слайдов при нахождении курсора в зоне слайдера (по умолчанию true)

Например, если вам нужно инициализировать слайдер и включить у него автоматическую смену слайдов, то используйте следующую конструкцию:

// инициализация элемента.slider в качестве карусели и настройка её с помощью дополнительных параметров slideShow(".slider", { isAutoplay: true });

Кроме этого, вы можете управлять слайдом с помощью методов. Для этого вам нужно сохранить в переменную результат выполнения функции slideShow:

// инициализация элемента.slider в качестве карусели и настройка её с помощью дополнительных параметров var sliderOne = slideShow(".slider");

После этого вы можете использовать его методы. Например, для того чтобы программно выполнить переход на следующий слайд необходимо просто вызвать метод show:

// выполняет переход на следующий слайд sliderOne.next();

Список методов слайдера:

  • stop – останавливает автоматическую смену слайдов;
  • next – выполняет переход на следующий слайд;
  • prev – выполняет переход на предыдущий слайд;
  • cycle – включает автоматическую смену слайдов.

Примеры использования слайдера для ротации различной информации

Применение слайдера для ротации изображений:


Использования слайдера для ротации текстовой информации:


Пример использования слайдера для отображения отзывов:


Применение слайдера для ротации товаров:


Описание исходных кодов слайдера и принципа его работы

Исходные коды слайдера состоят из:

  • html кода;
  • CSS кода (стилей);
  • JavaScript кода (скрипта).

HTML структура слайдера:

...
...
...
...

В этой разметке основным контейнером, содержащим остальной код слайдера, является элемент div с классом slider . Внутри него находятся три элемента: обёртка для слайдов.slider__wrapper , кнопки для перехода к предыдущему и следующему слайду.slider__control . Кроме этого после вызова функции слайдера в этот блок ещё динамически добавляется элемент с индикаторами.slider__indicators .

Обёртка для слайдов.slider__wrapper содержит в себе элемент.slider__items , а он в свою очередь элементы.slider__item . Такая конструкция позволит при необходимости расположить индикаторы и элементы управления как внутри слайдов, так и за их пределами.

В этом примере слайдер состоит из 4 элементов.slider__item . Эти элементы визуально представляют собой слайды.

Блок с индикаторами.slider__indicators выполнен в виде нумерованного списка. Он состоит из элементов li с атрибутом data-slide-to . Количество элементов в списке определяется числом слайдов. Данный атрибут используется для определения индекса слайда, на которой нужно перейти при нажатии на данный индикатор. В слайдере активный индикатор отмечается с помощью добавления к нему класса active .

Кнопки «назад» и «вперед» размечены с помощью элемента a . Кнопка для перехода к предыдущему слайду имеет классы slider__control и slider__control_prev , а к следующему – slider__control и slider__control_next .


Стили слайдера:

/* стили основного контейнера слайдера */ .slider { position: relative; overflow: hidden; max-width: 600px; margin-left: auto; margin-right: auto; } /* стили для обёртки, в которой заключены слайды */ .slider__wrapper { position: relative; overflow: hidden; } /* стили для контейнера слайдов */ .slider__items { display: flex; transition: transform 0.7s ease; } /* стили для слайдов */ .slider__item { flex: 0 0 100%; max-width: 100%; } /* стили для кнопок "вперед" и "назад" */ .slider__control { position: absolute; top: 50%; display: none; align-items: center; justify-content: center; width: 40px; color: #fff; text-align: center; opacity: 0.5; height: 50px; transform: translateY(-50%); background: rgba(0, 0, 0, 0.5); } .slider__control_show { display: flex; } .slider__control:hover, .slider__control:focus { color: #fff; text-decoration: none; outline: 0; opacity: 0.9; } .slider__control_prev { left: 0; } .slider__control_next { right: 0; } .slider__control::before { content: ""; display: inline-block; width: 20px; height: 20px; background: transparent no-repeat center center; background-size: 100% 100%; } .slider__control_prev::before { background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns="http://www.w3.org/2000/svg" fill="%23fff" viewBox="0 0 8 8"%3E%3Cpath d="M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z"/%3E%3C/svg%3E"); } .slider__control_next::before { background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns="http://www.w3.org/2000/svg" fill="%23fff" viewBox="0 0 8 8"%3E%3Cpath d="M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z"/%3E%3C/svg%3E"); } /* стили для индикаторов */ .slider__indicators { position: absolute; right: 0; bottom: 10px; left: 0; z-index: 15; display: flex; justify-content: center; padding-left: 0; margin-right: 15%; margin-left: 15%; list-style: none; margin-top: 0; margin-bottom: 0; } .slider__indicators li { box-sizing: content-box; flex: 0 1 auto; width: 30px; height: 4px; margin-right: 3px; margin-left: 3px; text-indent: -999px; cursor: pointer; background-color: rgba(255, 255, 255, 0.5); background-clip: padding-box; border-top: 10px solid transparent; border-bottom: 10px solid transparent; } .slider__indicators li.active { background-color: #fff; }

В слайдере в некоторый момент времени пользователю всегда показывается только один слайд. Осуществляется это посредством скрытия всех элементов (слайдов) располагающихся за пределами области внутри.slider__wrapper . В CSS это осуществляется посредством установки.slider__wrapper свойства overflow со значением hidden .

Slider__wrapper { overflow: hidden; }

Переход от одного слайда к другому осуществляется посредством CSS трансформаций. Для этого к.slider__items посредством кода JavaScript добавляется CSS свойство transform , значение которого содержит функцию translateX с определённым значением. Например, если данной функции указать в качестве значения -100%, то браузер осуществит переход к следующему слайду, а если наоборот, 100% - то к предыдущему.


Время и скорость, с которой будет осуществляться трансформация определяется с помощью CSS свойства transition:

Slider__items { transition: transform 0.7s ease; }

Логика работы слайдера:

"use strict"; var slideShow = (function () { return function (selector, config) { var _slider = document.querySelector(selector), // основный элемент блока _sliderContainer = _slider.querySelector(".slider__items"), // контейнер для.slider-item _sliderItems = _slider.querySelectorAll(".slider__item"), // коллекция.slider-item _sliderControls = _slider.querySelectorAll(".slider__control"), // элементы управления _currentPosition = 0, // позиция левого активного элемента _transformValue = 0, // значение транфсофрмации.slider_wrapper _transformStep = 100, // величина шага (для трансформации) _itemsArray = , // массив элементов _timerId, _indicatorItems, _indicatorIndex = 0, _indicatorIndexMax = _sliderItems.length - 1, _stepTouch = 50, _config = { isAutoplay: false, // автоматическая смена слайдов directionAutoplay: "next", // направление смены слайдов delayAutoplay: 5000, // интервал между автоматической сменой слайдов isPauseOnHover: true // устанавливать ли паузу при поднесении курсора к слайдеру }; // настройка конфигурации слайдера в зависимости от полученных ключей for (var key in config) { if (key in _config) { _config = config; } } // наполнение массива _itemsArray for (var i = 0, length = _sliderItems.length; i < length; i++) { _itemsArray.push({ item: _sliderItems[i], position: i, transform: 0 }); } // переменная position содержит методы с помощью которой можно получить минимальный и максимальный индекс элемента, а также соответствующему этому индексу позицию var position = { getItemIndex: function (mode) { var index = 0; for (var i = 0, length = _itemsArray.length; i < length; i++) { if ((_itemsArray[i].position < _itemsArray.position && mode === "min") || (_itemsArray[i].position > _itemsArray.position && mode === "max")) { index = i; } } return index; }, getItemPosition: function (mode) { return _itemsArray.position; } }; // функция, выполняющая смену слайда в указанном направлении var _move = function (direction) { var nextItem, currentIndicator = _indicatorIndex;; if (direction === "next") { _currentPosition++; if (_currentPosition > position.getItemPosition("max")) { nextItem = position.getItemIndex("min"); _itemsArray.position = position.getItemPosition("max") + 1; _itemsArray.transform += _itemsArray.length * 100; _itemsArray.item.style.transform = "translateX(" + _itemsArray.transform + "%)"; } _transformValue -= _transformStep; _indicatorIndex = _indicatorIndex + 1; if (_indicatorIndex > _indicatorIndexMax) { _indicatorIndex = 0; } } else { _currentPosition--; if (_currentPosition < position.getItemPosition("min")) { nextItem = position.getItemIndex("max"); _itemsArray.position = position.getItemPosition("min") - 1; _itemsArray.transform -= _itemsArray.length * 100; _itemsArray.item.style.transform = "translateX(" + _itemsArray.transform + "%)"; } _transformValue += _transformStep; _indicatorIndex = _indicatorIndex - 1; if (_indicatorIndex < 0) { _indicatorIndex = _indicatorIndexMax; } } _sliderContainer.style.transform = "translateX(" + _transformValue + "%)"; _indicatorItems.classList.remove("active"); _indicatorItems[_indicatorIndex].classList.add("active"); }; // функция, осуществляющая переход к слайду по его порядковому номеру var _moveTo = function (index) { var i = 0, direction = (index > _indicatorIndex) ? "next" : "prev"; while (index !== _indicatorIndex && i <= _indicatorIndexMax) { _move(direction); i++; } }; // функция для запуска автоматической смены слайдов через промежутки времени var _startAutoplay = function () { if (!_config.isAutoplay) { return; } _stopAutoplay(); _timerId = setInterval(function () { _move(_config.directionAutoplay); }, _config.delayAutoplay); }; // функция, отключающая автоматическую смену слайдов var _stopAutoplay = function () { clearInterval(_timerId); }; // функция, добавляющая индикаторы к слайдеру var _addIndicators = function () { var indicatorsContainer = document.createElement("ol"); indicatorsContainer.classList.add("slider__indicators"); for (var i = 0, length = _sliderItems.length; i < length; i++) { var sliderIndicatorsItem = document.createElement("li"); if (i === 0) { sliderIndicatorsItem.classList.add("active"); } sliderIndicatorsItem.setAttribute("data-slide-to", i); indicatorsContainer.appendChild(sliderIndicatorsItem); } _slider.appendChild(indicatorsContainer); _indicatorItems = _slider.querySelectorAll(".slider__indicators > li") }; var _isTouchDevice = function () { return !!("ontouchstart" in window || navigator.maxTouchPoints); }; // функция, осуществляющая установку обработчиков для событий var _setUpListeners = function () { var _startX = 0; if (_isTouchDevice()) { _slider.addEventListener("touchstart", function (e) { _startX = e.changedTouches.clientX; _startAutoplay(); }); _slider.addEventListener("touchend", function (e) { var _endX = e.changedTouches.clientX, _deltaX = _endX - _startX; if (_deltaX > _stepTouch) { _move("prev"); } else if (_deltaX < -_stepTouch) { _move("next"); } _startAutoplay(); }); } else { for (var i = 0, length = _sliderControls.length; i < length; i++) { _sliderControls[i].classList.add("slider__control_show"); } } _slider.addEventListener("click", function (e) { if (e.target.classList.contains("slider__control")) { e.preventDefault(); _move(e.target.classList.contains("slider__control_next") ? "next" : "prev"); _startAutoplay(); } else if (e.target.getAttribute("data-slide-to")) { e.preventDefault(); _moveTo(parseInt(e.target.getAttribute("data-slide-to"))); _startAutoplay(); } }); document.addEventListener("visibilitychange", function () { if (document.visibilityState === "hidden") { _stopAutoplay(); } else { _startAutoplay(); } }, false); if (_config.isPauseOnHover && _config.isAutoplay) { _slider.addEventListener("mouseenter", function () { _stopAutoplay(); }); _slider.addEventListener("mouseleave", function () { _startAutoplay(); }); } }; // добавляем индикаторы к слайдеру _addIndicators(); // установливаем обработчики для событий _setUpListeners(); // запускаем автоматическую смену слайдов, если установлен соответствующий ключ _startAutoplay(); return { // метод слайдера для перехода к следующему слайду next: function () { _move("next"); }, // метод слайдера для перехода к предыдущему слайду left: function () { _move("prev"); }, // метод отключающий автоматическую смену слайдов stop: function () { _config.isAutoplay = false; _stopAutoplay(); }, // метод запускающий автоматическую смену слайдов cycle: function () { _config.isAutoplay = true; _startAutoplay(); } } } }()); slideShow(".slider", { isAutoplay: true });

Код слайдера написан на «чистом» JavaScript, без использования библиотеки jQuery. Программный код структурирован и организован в виде «модуля».

Основные функции, выполняющие всю логику, используемые внутри модуля slideShow:

  • _startAutoplay – функция для запуска автоматической смены слайдов через определённые промежутки времени определяемым параметром delayAutoplay (по умолчанию 5 секунд);
  • _stopAutoplay – функция, отключающая автоматическую смену слайдов;
  • _move – функция, выполняющая смену слайда в указанном направлении;
  • _slideTo – функция, осуществляющая переход к слайду по его порядковому номеру; она используется при обработке события «click» на индикаторах;
  • _addIndicators – функция, добавляющая индикаторы к слайдеру;
  • _setupListener – функция, осуществляющая установку обработчиков для событий для слайдера.

Данные функции организуют логику работу слайдера. Они доступны как было уже отмечено выше только внутри модуля, к ним нельзя обратиться вне его.

C ollection of free HTML and CSS slider code examples: card, comparison, fullscreen, responsive, simple , etc. Update of June 2018 collection. 7 new items.

Table of Contents

Related Articles


About the code

A set of onboarding screens in HTML/CSS/JS. A personal experiment with layering PNG icons, CSS3 transitions, & flexbox.

HTML, CSS and JavaScript information card slider.
Made by Andy Tran
November 23, 2015

Photo slider working on desktop and mobile browsers.
Made by Taron
September 29, 2014

Comparison (Before/After) Sliders


About the code

A simple and clean image comparison slider, fully responsive and touch ready made with CSS and jQuery.


About the code

A before and after slider with only html and css.


About the code

Playing around with a new idea using my two layer before/after image slider. Keeping it minimal. Keeping it vanilla. Like it if it"s useful:)

Vanilla JS, minimal, nice to look.
Made by Huw
July 3, 2017


About the code

A "split-screen" slider element with JavaScript.

A little experiment for a before & after slider all inside a SVG. Masking makes it pretty simple. Since it’s all SVG, the images and captions scale nicely together. GreenSock’s Draggable and ThrowProps plugins were used for the slider control.
Made by Craig Roblewsky
April 17, 2017

Uses customised range input for slider.
Made by Dudley Storey
October 14, 2016

Responsive image comparison slider with HTML, CSS and JavaScript.
Made by Ege Görgülü
August 3, 2016

HTML5, CSS3 and JavaScript video before-and-after comparison slider.
Made by Dudley Storey
April 24, 2016

A handy draggable slider to quickly compare 2 images, powered by CSS3 and jQuery.
Made by CodyHouse
September 15, 2014

Fullscreen Sliders

About the code

Simple slider based on radio inputs. 100% pure HTML + CSS. Works also with arrow keys.

Responsive: yes

Dependencies: -


About the code

Nice transition effect for fullscreen slider.


About the code

Horizontal parallax sliding slider with Swiper.js.


About the code

Responsive smooth 3D perspective slider on mouse move.

Fullscreen hero image slider (swipe panels theme) with HTML, CSS and JavaScript.
Made by Tobias Bogliolo
June 25, 2017

A slider interaction thing using Velocity and Velocity effects (UI Pack) to enhance the animation. Animation is triggered via arrow keys, nav click, or scrolling jack. This version includes borders as part of the interaction.
Made by Stephen Scaff
May 11, 2017

Simple slider in a minimal style to show off images. Part of the image pops out on each slide.
Made by Nathan Taylor
Jannuary 22, 2017

The thing is pretty easy customizable. You can safely change font, font size, font color, animation speed. The first letter of a new string in array in JS will appear on a new slide. Easy to create (or delete) a new slide: 1. Add new city in the array in JS. 2. Change number of slides variable and put a new image in scss list in CSS.
Made by Ruslan Pivovarov
October 8, 2016

  1. Clip-path for image masking rectangle border (webkit only).
  2. Blend-mode for this mask.
  3. Smart color system, just put your color name and value into sass map and then add proper class with this color name to elements and everything will work!
  4. Cool credits side-menu (click small button in the center of demo).
  5. Vanilla js with just < 200 lines of code (basically it’s just adds/removes classes).
Made by Nikolay Talanov
October 7, 2016

This skewed slider with scrolling based on pure JS and CSS (without libraries).
Made by Victor Belozyorov
September 3, 2016

A slider animation with Pokemon design.
Made by Pham Mikun
August 18, 2016

HTML, CSS and JavaScritp slider with complex animation and half-collored angled text.
Made by Ruslan Pivovarov
July 13, 2016

Slider parallax effect with HTML, CSS and JavaScript.
Made by Manuel Madeira
June 28, 2016

HTML, CSS and JavaScript slider with ripple effect.
Made by Pedro Castro
May 21, 2016

Clip-Path revealing slider with HTML, CSS and JavaScript.
Made by Nikolay Talanov
May 16, 2016

GSAP + Slick slider with preview of previous/next slides.
Made by Karlo Videk
April 27, 2016

HTML, CSS and JavaScript full page slider.
Made by Joseph Martucci
February 28, 2016

Full slider prototype with HTML, CSS and JavaScript.
Made by Gluber Sampaio
January 6, 2016

A fullscreen, sort of responsive, slideshow animated with Greensocks TweenLite/Tweenmax.
Made by Arden
December 12, 2015

Made by Arden
December 5, 2015

Full-Screen slider (GSAP Timeline) #1 with HTML, CSS and JavaScript.
Made by Diaco M.Lotfollahi
November 23, 2015

HTML and CSS slider with custom effects.
Made by Nikolay Talanov
November 12, 2015

Fullscreen drag-slider with parallax with HTML, CSS and JavaScript.
Made by Nikolay Talanov
November 12, 2015

Proof of concept rotating slider. Uses clip-path and lots of math.
Made by Tyler Johnson
April 16, 2015

A simple fullscreen CSS & jQuery slider using translateX and translate3d smoothness!
Made by Joseph
August 19, 2014

Responsive Sliders

About the code

Images Opacity Slider

Images opacity slider in HTML and CSS.

Compatible browsers: Chrome, Edge, Firefox, Opera, Safari

Responsive: yes

Dependencies: -

About the code

Stacked Flexible Slides Layout

This example illustrates how to create layout of slides stacked on each other (especially useful for fade in/out transitions). It"s achieved without setting their height and avoiding position: absolute; so they are fully flexible and easy to keep in normal page flow.

Compatible browsers: Chrome, Edge, Firefox, Opera, Safari

Responsive: yes

Dependencies: -

About the code

Responsive Slider

Animated responsive slider in HTML, CSS and JavaScript.

Compatible browsers: Chrome, Edge, Firefox, Opera, Safari

Responsive: yes

Dependencies: animate.css

About the code

Slider With Masked Text

CSS only slider with masked text.

Compatible browsers: Chrome, Edge (partial), Firefox, Opera, Safari

Responsive: yes

Dependencies: -


About the code

Image and content with parallax effect.

About the code

CSS only slide gallery.

Compatible browsers: Chrome, Edge, Firefox, Opera, Safari

Responsive: yes

Dependencies: -

About the code

Pure HTML/CSS Slider

Pure HTML/CSS slider with circular SVG progress bar.

Compatible browsers: Chrome, Edge (partial), Firefox (partial), Opera, Safari

Responsive: yes

Dependencies: font-awesome.css


About the code

An experiment to create a completely responsive vertical slider with thumbnails using only CSS, and retaining the aspect ratio of the images.


About the code

A simple Flexbox image slider/carousel made with vanilla JavaScript.


About the code

This is an experiment that simulates a motion blur effect every time a slide is switched. It takes advantage of SVG Gaussian Blur filter and some CSS keyframes animation. Although the effect does not require any Javascript to properly work, in this example Javascript is only used for the slider functionality.


About the code

Cool animates slider with JS.


About the code

This is an experiment on how SVG patterns can help us create masked-like images for a CSS-only image slider.

Exploring some slider transitions. Swiper slider with parallax option enabled. Playing with CSS filters mostly here.
Made by Mirko Zorić
June 12, 2017

Simple GSAP slider with some subtle tween animations.
Made by Goran Vrban
June 9, 2017

Slider UI with HTML, CSS and JavaScript.
Made by Mergim Ujkani
June 6, 2017

Slider GSAP virsion 2.
Made by Em An
May 4, 2017

A little slicey transition slider using a simple add class deal. Have to smooth out the timings a bit and decide on the best approach for mobile (just stack, add touch events, make images full viewport, etc. Supports scrollwheel (scroll jacking), nav buttons and arrow keys. Can also increase the content wrapper to make the images fill viewport in their non animating state, which is kinda cool as well.
Made by Stephen Scaff
January 3, 2017

Leveraged CSS border-image & clip-path to create a slider animation effect.
Made by Emily Hayman
December 31, 2016

Little slider built with flexbox. Somewhat responsive, and can have fixed elements alongside the slider area.
Made by Robert
November 28, 2016

HTML, CSS canvas slider.
Made by Nvagelis
October 29, 2016

HTML, CSS and JavaScript 3D smooth slider.
Made by Eduardo Allegrini
October 19, 2016

HTML and CSS cupcake slider with sprinkles!
Made by Jamie Coulter
October 14, 2016


Made by mario s maselli
October 12, 2016

Exploring UI animation #2 with HTML, CSS and JavaScript.
Made by mario s maselli
September 22, 2016

Exploring UI animation #3 with HTML, CSS and JavaScript.
Made by mario s maselli
September 22, 2016

Ecommerce Slider v2.0 with HTML, CSS and JavaScript.
Made by Pedro Castro
September 17, 2016

HTML, CSS and JavaScript clean slider with curved background.
Made by Ruslan Pivovarov
September 13, 2016

Exploring UI animation #1 with HTML, CSS and JavaScript.
Made by mario s maselli
September 8, 2016

Enjoy the power of CSS: Up & down each middle image and paginated slider with lightbox.
Made by Kseso
August 15, 2016

Double exposure is photographic technique that combines 2 different images into a single image.
Made by Misaki Nakano
August 3, 2016

Slider using CSS3 property clip.
Made by Pedro Castro
May 1, 2016

Responsive CSS slider.
Made by geekwen
April 19, 2016

This is a simple slider experiment displaying words with beautiful meanings which cannot be directly translated. Focus: elegant typography and simple yet alluring transitions.
Made by Joe Harry
April 5, 2016

The animation idea is to change the value of CSS clip path, thus make a masking effect.
Made by Bhakti Al Akbar
March 31, 2016

Dot slider with HTML, CSS and JavaScript.
Made by Derek Nguyen
March 16, 2016

Prism effect slider with HTML, CSS and JavaScript.
Made by victor
March 12, 2016

Sliding background gallery with HTML, CSS and JavaScript.
Made by Ron Gierlach
November 30, 2015

HTML, CSS and JavaScript slider solution.
Made by Jürgen Genser
September 30, 2015

A product slider powered by Sequence.js. Sequence.js - The responsive CSS animation framework for creating unique sliders, presentations, banners, and other step-based applications.
Made by Ian Lunn
September 15, 2015

Tiny circle customized slider.
Made by Bram de Haan
August 11, 2015

Responsive GTA V slider with HTML, CSS and JavaScript.
Made by Eduard Mayer
January 24, 2014

It’s like a slider but it rotates cubeishly for reasons unknown.
Made by Eric Brewer
December 4, 2013

Made by Hugo DarbyBrown
August 28, 2013

Simple Sliders

Image overlay slider with HTML, CSS and vanilla JavaScript.
Made by Yugam
June 7, 2017

HTML and CSS featured image slider.
Made by Joshua Hibbert
June 16, 2016

Multi Axis Image Slider

Multi axis image slider with HTML, CSS and JavaScript.
Made by Burak Can
July 22, 2013

Cube slider, a small experiment with HTML5/CSS3 3d transforms.
Made by Ilya K.
June 26, 2013

THE BELL

Есть те, кто прочитали эту новость раньше вас.
Подпишитесь, чтобы получать статьи свежими.
Email
Имя
Фамилия
Как вы хотите читать The Bell
Без спама