Эффект волны для галереи
Иногда хочется вывести содержание страницы в необычной форме. В данном уроке мы представляем вам эксперимент с уникальной формой размещения изображений - волной. Идея заключается в небольшом повороте и размещении миниатюр на кривой синусоиды. При нажатии кнопки мыши на миниатюре происходит увеличения масштаба до среднего значения. При последующем нажатии кнопки мыши на пункте происходит вывод дополнительного содержания (описание изображения).
Как действует эффект
Структура кода HTML состоит из основного контейнера с классом wd-wrapper. В демонстрации он позиционируется абсолютно, поэтому мы его можем растянуть над страницей с помощью свойств left/right/top/bottom без определения высоты и ширины. Но он может иметь и относительное позиционирование с заданными высотой и шириной. Кривая синусоиды автоматически подстраивается под высоту контейнера. В демонстрации можно наблюдать перестройку кривой при изменении размеров окна.
Изначально у нас выводится синусоида с маленькими миниатюрами, повернутыми на случайны угол:
Для хранения изображений и содержания используется следующий элемент:
<div class="wd-element"> <img src="/images/1.jpg" alt="Some Image" /> <div class="wd-info"> <div class="wd-info-title"> <h2>Название</h2> </div> <div class="wd-info-desc"> <p>Описание</p> </div> </div> </div>
Элемент с классом wd-info-title выводится для изображения в режиме среднего масштабирования:
В данном режиме также есть кнопка уменьшения масштаба, которая позволяет вернуться в режим меленьких миниатюр. При нажатии на миниатюре среднего размера открывается окно для вывода дополнительного содержания. Здесь пользователь может перемещаться по всем пунктам или нажать кнопку "х закрыть", что вернет его в режим промотра средних миниатюр.
Опции
Можно использовать несколько опций для настройки внешнего вида и анимации волны:
speed : 1000, // Скорость анимации easing : 'easeInOutExpo', // Эффект анимации minImgW : 50, // Минимальная ширина миниатюры для случайной установки maxImgW : 90, // Максимальная ширина миниатюры для случайной установки minImgAngle : -15, // Минимальный угол вращения миниатюры для случайной установки maxImgAngle : 15, // Максимальный угол вращения миниатюры для случайной установки leftFactor : 40, // Расстояние между изображениями по оси Х startFactor : 1, // Чем больше данный параметр, тем больше расстояние между первой миниатюрой и левой границей контейнера sinusoidFunction : { A : 100, // амплитуда T : 700, // период P : 0 // фаза }
Демонстрация
Вы можете посмотреть эффект волны на четырех демонстрационных страницах:
- Демо 1: В данной демонстрации используются значения по умолчанию.
- Демо 2: Миниатюры немного больше. Амплитуда синусоиды меньше, а период больше, что делает синусоиду более плавной.
- Демо 3: Используются миниатюры меньшего размера, а также изменены скорость и эффект анимации.
- Демо 4: Диапазон вращения увеличен и используется другое значение фазы, чтобы сместить начало галереи.
Источник: http://feedproxy.google.com/~r/ruseller/CdHX/~3/YsIgW9kxd0k/lessons.php
Дайджест новых статей по интернет-маркетингу на ваш email
Новые статьи и публикации
- 2024-11-26 » Капитан грузового судна, или Как начать использовать Docker в своих проектах
- 2024-11-26 » Обеспечение безопасности ваших веб-приложений с помощью PHP OOP и PDO
- 2024-11-22 » Ошибки в Яндекс Вебмастере: как найти и исправить
- 2024-11-22 » Ошибки в Яндекс Вебмастере: как найти и исправить
- 2024-11-15 » Перенос сайта на WordPress с одного домена на другой
- 2024-11-08 » OSPanel 6: быстрый старт
- 2024-11-08 » Как установить PhpMyAdmin в Open Server Panel
- 2024-09-30 » Как быстро запустить Laravel на Windows
- 2024-09-25 » Next.js
- 2024-09-05 » OpenAI рассказал, как запретить ChatGPT использовать содержимое сайта для обучения
- 2024-08-28 » Чек-лист: как увеличить конверсию интернет-магазина на примере спортпита
- 2024-08-01 » WebSocket
- 2024-07-26 » Интеграция с Яндекс Еда
- 2024-07-26 » Интеграция с Эквайринг
- 2024-07-26 » Интеграция с СДЕК
- 2024-07-26 » Интеграция с Битрикс-24
- 2024-07-26 » Интеграция с Travelline
- 2024-07-26 » Интеграция с Iiko
- 2024-07-26 » Интеграция с Delivery Club
- 2024-07-26 » Интеграция с CRM
- 2024-07-26 » Интеграция с 1C-Бухгалтерия
- 2024-07-24 » Что такое сторителлинг: техники и примеры
- 2024-07-17 » Ошибка 404: что это такое и как ее использовать для бизнеса
- 2024-07-03 » Размещайте прайс-листы на FarPost.ru и продавайте товары быстро и выгодно
- 2024-07-01 » Профилирование кода в PHP
- 2024-06-28 » Изучаем ABC/XYZ-анализ: что это такое и какие решения с помощью него принимают
- 2024-06-17 » Зачем вам знать потребности клиента
- 2024-06-11 » Что нового в работе Яндекс Метрики: полный обзор обновления
- 2024-06-11 » Поведенческие факторы ранжирования в Яндексе
- 2024-06-11 » Скорость загрузки сайта: почему это важно и как влияет на ранжирование
Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей Индийская пословица |
Мы создаем сайты, которые работают! Профессионально обслуживаем и продвигаем их , а также по всей России и ближнему зарубежью с 2006 года!
Как мы работаем
Заявка
Позвоните или оставьте заявку на сайте.
Консультация
Обсуждаем что именно Вам нужно и помогаем определить как это лучше сделать!
Договор
Заключаем договор на оказание услуг, в котором прописаны условия и обязанности обеих сторон.
Выполнение работ
Непосредственно оказание требующихся услуг и работ по вашему заданию.
Поддержка
Сдача выполненых работ, последующие корректировки и поддержка при необходимости.