- Операторы
- Управляющие инструкции
- JS Объекты
- браузер BOM
- HTML DOM
- События
- HTML Объекты
- Промисы, async/await
- Сетевые запросы
- Бинарные данные и файлы
- Разное
- JavaScript без JQuery
- Полезные js-скрипты
- .htacces
- Аналоги PHP-функций
- JavaScript в CSS
- Cocoen
- Управление Gif анимацией
Gifffer: Управление Gif анимацией на JavaScript
Когда на странице много gif изображений, очень удобно, если они не мельтешат перед глазами, и пользователь может сам выбрать, что просмотреть, а что нет.
Чтобы внедрить ручное управление gif анимацией у себя на сайте, скачайте готовую JS библиотеку Gifffer. Gifffer позволяет отключить автоматический запуск браузером gif изображений. Кроме того, библиотека добавляет кнопку управления над анимацией: пользователь может вручную запустить, поставить на паузу, или возобновить просмотр. И еще есть один плюс. Кнопку запуска вы можете оформить так, как вам захочется с помощью CSS стилей.
Важно! Если вы используете gif анимацию на сайте под управлением WordPress, при загрузке движок создает уменьшенные копии исходного изображения. Проблема в том, что копии становятся статичными. Единственный способ обойти эту проблему – выводить исходное изображение. Это значит, что оптимизацию и выбор подходящего размера, необходимо производить перед заливкой картинки на сайт. Остается надеется, что в будущих версиях WP эта проблема будет устранена.
Подключение библиотеки.
<script type="text/javascript" src="gifffer.js"></script>
В теге img необходимо указать путь к картинке, вместо src
используется атрибут data-gifffer
. Например:
<img data-gifffer="image.gif" />
Инициализация библиотеки:
window.onload = function() { Gifffer(); }
Можно оформить кнопку запуска анимации.
window.onload = function() { Gifffer({ playButtonStyles: { 'width': '60px', 'height': '60px', 'border-radius': '30px', 'background': 'rgba(255, 255, 255, 0.3)', 'position': 'absolute', 'top': '50%', 'left': '50%', 'margin': '-30px 0 0 -30px' }, playButtonIconStyles: { 'width': '0', 'height': '0', 'border-top': '14px solid transparent', 'border-bottom': '14px solid transparent', 'border-left': '14px solid rgba(255, 255, 255, 0.75)', 'position': 'absolute', 'left': '26px', 'top': '16px' } }); }
Дополнительно можно прописать атрибуты изображения:
<img data-gifffer="image.gif" data-gifffer-width="250" data-gifffer-height="250" data-gifffer-alt="Описание картинки" >
Интегрируем на WordPress сайт
Чтобы библиотека заработала на WordPress сайте, придется подкорректировать обычный вывод миниатюр с использованием функции the_post_thumbnail
. Для работы анимации, нужно добавить изображению атрибут data-gifffer
. Делается это так:
<?php $attr = array( 'data-gifffer' => $src, 'alt' => trim(strip_tags( $wp_postmeta->_wp_attachment_image_alt )), ); the_post_thumbnail( 'medium', $attr ); ?>
Пример:
<!DOCTYPE html> <html> <head><meta http-equiv='Content-Type' content='text/html; charset=UTF-8' /> <script type="text/javascript" src="gifffer.js"></script> <script>window.onload = function() {Gifffer();}</script> <title>Пример Gifffer</title> </head> <body> <p>Когда забыл покормить кота</p> <img data-gifffer="image/1040.gif" data-gifffer-alt='Когда забыл покормить кота' /><br /><br /> <p>Котэ-массажист</p> <img data-gifffer="image/1059.gif" data-gifffer-alt='Котэ-массажист' /> </body> </html>