Смена изображения ползунком - "До" и "После".

Смена изображения ползунком - "До" и "После".
Смена изображения ползунком - "До" и "После".

Для одного из проектов нужно было показать на двух фотографиях различия между изделями до и после реставрации

Так получилось, что за много лет создания сайтов аналогичной задачи как-то не было. Решение, однако, нашлось довольно быстро. Скрипт TwentyTwenty - это всё, что нам было нужно

Применение скрипта настолько простое, что справится любой новичок в вёрстке.

Делимся своей находкой - может быть кому-то ещё пригодится

Вам нужно показать на сайте различия между двумя изображениями? TwentyTwenty, визуальный инструмент для сравнения, позволяет легко это осуществить!

Как это работает

TwentyTwenty работает путем наложения двух изображений друг на друга. При перемещении ползунка по изображению он использует свойство CSS clip для обрезки изображения слева. Это позволяет изображению справа отображаться через контейнер. Мы используем пользовательские события движения из библиотеки jquery.event.move для поддержки перемещения ползунка 1:1 на мобильных устройствах.

Настройка

Начать работу предельно просто - оберните два изображения в контейнер. Первое изображение будет слева, а второе – справа. Вот пример контейнера:

<div id="container1">
  <img src="sample-before.png">
  <img src="sample-after.png">
</div>

Затем вызовите этот контейнер после загрузки образов:twentytwenty()

$(function() {
  $("#container1").twentytwenty();
});

И вуаля!

До реставрации After restoration

Предотвращение FOUC*

Если вы хотите предотвратить FOUC, просто добавьте класс в свой контейнер следующим образом: twentytwenty-container

<div id='container1' class='twentytwenty-container'>
  <img src='sample-before.png'>
  <img src='sample-after.png'>
</div>

Параметры JavaScript

В TwentyTwenty можно передать следующие параметры:

ИмяЗначение по умолчаниюОписание
default_offset_pct 0.5 На каком расстоянии слева должен находиться ползунок по умолчанию

Зависимости

Этот плагин зависит от следующих файлов:

  • 1. jQuery
  • 2. jquery.event.move — используется для поддержки сенсорных событий на мобильных устройствах.

*FOUC, или вспышка нестилизованного текста — это случай, когда веб-страница ненадолго появляется со стилями браузера по умолчанию перед загрузкой внешней таблицы стилей CSS, из-за того, что движок веб-браузера отображает страницу до того, как вся информация будет извлечена. Страница исправляется, как только правила стиля загружены и применены; Однако этот сдвиг может отвлекать. Связанные с этим проблемы включают вспышку невидимого текста и вспышку искусственного текста.

СкачатьTwentyTwenty

Понравилась статья?
Будем признательны, если поделитесь в соцсетях или мессенджерах, а также присоединитесь к нашей группе Вконтакте. Будет интересно!

Другие статьи по теме:

Фоновая волна на простом CSS
Фоновая волна на простом CSS

Рассмотрим в этой статье, как сделать фоновые волны на сайте, используя только возможности CSS3 и SVG файл. Т.е. без применения Javascript.

HostCMS v.6. Вертикальное меню на jQuery
HostCMS v.6. Вертикальное меню на jQuery

Простой пример левого вертикального выпадающего меню для групп товаров интернет магазина. Простая установка и настройка...

Эффект вращения с помощью CSS3
Эффект вращения с помощью CSS3
CSS3 позволяет создавать разнообразные эффекты на сайтах без использования javascript и громоздкого flesh. Все последние версии современных браузеров позволяют использовать css3 в полном объеме. Если Вы считаете, что посетители вашего сайта люди прогрессивные и пользуются современными браузерами, которые постоянно обновляют, то Вы смело можете использовать новые технологоии и не заботиться о тех, кто все еще живет в прошлом веке и использует IE5…
2024 год стал еще одним удивительным годом для CSS!
2024 год стал еще одним удивительным годом для CSS!

Переходы между документами и анимация при прокрутке позволяют добавить больше интерактивности в ваши приложения с помощью нескольких строк CSS. Теперь вы можете анимировать height: auto;, стилизовать полосы прокрутки и изменять размер текстовых полей в соответствии с их содержимым.

Градиентная обводка блока на CSS
Градиентная обводка блока на CSS

Как сделать красивую градиентную обводку блока на одном только CSS? Для этого мы сделаем следующее:

1. Создадим div.linear-gradient с градиентным фоном;

2. Создадим внутренний блок div с небольшим отступом.

7 рецептов для перехода между страницами. Красивые эффекты при загрузке страницы
7 рецептов для перехода между страницами. Красивые эффекты при загрузке страницы

Переходы между страницами выглядят очень, очень круто. Более того, они начинают появляться повсюду. Уверены, что вы, как и мы, не раз встречали в сети такие переходы, от которых у вас возникает восхищение и желание немедленно использовать их на своем сайте или в проекте.

Мы используем cookie-файлы, чтобы получить статистику, которая помогает нам обеспечивать вас лучшим контентом. Вы можете прочитать подробнее о cookie-файлах или изменить настройки браузера. Отключение cookie-файлов может привести к неполадкам в работе сайта. Продолжая пользоваться сайтом без изменения настроек, вы даете согласие на использование ваших cookie-файлов. Это совершенно безопасно!