Галерея изображений на jQuery. Красивая галерея с сортировкой на JQuery Всплывающая галерея jquery

Здравствуйте, уважаемые читатели a! В этом уроке я покажу Вам, как создать минималистичную, но в тоже время удобную и функциональную фото галерею на jQuery , или галерею изображений, кому как удобно. В галерее есть возможность создавать категории, с последующей фильтрацией. Так же есть возможность запуска слайд-шоу. Галерея работает во всех браузерах, так что проблем с адаптацией не будет.

Для создания этой галереи будут использованы две бесплатные библиотеки : Quicksand и PrettyPhoto . Они значительно упрощают создание галереи. Как всегда результат работы Вы можете увидеть на демонстрационной странице, а также скачать архив с работающей галерей и все исходные файлы. Единственным минусом, если можно так сказать, является создание в ручную миниатюр для больших изображений. А во всем остальном эта галерея достойна внимания. Так же как и !

HTML разметка

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

1
2
3
4
5
6
7
8


Категории:
Все
Категория 1
Категория 2
Категория 3
Категория 4

1
2
3
4
5
6
7
8
9
10
11







  • Название картинки

    опубликовано: 2012


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

    Не забывайте также о 2 важных вещах, у элемента списка li атрибут data-id должен быть уникальным. Атрибут data-type содержит класс категории, список которых я описывал выше. О разметке вроде бы все.

    Стили CSS

    Особо заострять внимание на стилях не буду, так как используем мы уже готовую библиотеку PrettyPhoto , которая отвечает за увеличение изображения, и css кода достаточно много. Однако стоит заметить предусмотрено 5 вариантов оформления увеличенного изображения, хотя в идеале всего 3 , так как в двух вариантах лишь убирается закругление.

    Поэтому, покажу лишь CSS стили для миниатюр ну и списка категорий.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28

    Portfolio-categ { margin-bottom : 30px ; }
    .portfolio-categ li {
    display : inline ;
    margin-right : 10px ;
    }
    .image-block {
    display : block ;
    position : relative ;
    }
    .image-block img {
    border : 1px solid #d5d5d5 ;
    border-radius : 4px 4px 4px 4px ;
    background : #FFFFFF ;
    padding : 10px ;
    }
    .image-block img: hover {
    border : 1px solid #A9CF54 ;
    box-shadow : 0 0 5px #A9CF54 ;
    }
    .portfolio-area li {
    float : left ;
    margin : 0 12px 20px 0 ;
    overflow : hidden ;
    width : 245px ;
    padding : 5px ;
    }
    .home-portfolio-text { margin-top : 10px ; }
    li.active a { text-decoration : underline ; }

    В принципе, со стилями должно быть все понятно. Чтобы категории выстроились в ряд свойству display придается значение inline . Для того чтобы придать эффект обводки изображения, задается фоновый цвет (белый) и отступ в 10 пикселей. Размеры элементов списка задаются в .portfolio-area li .

    jQuery

    Ну и напоследок самое важное, то ради чего весь урок. Это jQuery код. Начнем с фильтрации картинок, по категориям.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23

    // Выбираем все дочерние элементы portfolio-area и записываем в переменную
    var $data = $(".portfolio-area" ) .clone () ;

    $(".portfolio-categ li" ) .click (function (e) {
    $(".filter li" ) .removeClass ("active" ) ;

    var filterClass= $(this ) .attr ("class" ) .split (" " ) .slice (- 1 ) [ 0 ] ;

    if (filterClass == "all" ) {
    var $filteredData = $data.find (".portfolio-item2" ) ;
    } else {
    var $filteredData = $data.find (".portfolio-item2" ) ;
    }
    $(".portfolio-area" ) .quicksand ($filteredData, {
    duration: 600 ,
    adjustHeight: "auto"
    } , function () {

    LightboxPhoto() ;
    } ) ;
    $(this ) .addClass ("active" ) ;
    return false ;
    } ) ;

    C помощью метода clone() и селектора, выбираем все дочерние элементы у .portfolio-area и записываем их в переменную $data . Далее отслеживаем клик по одной из категорий, элемент li у списка с классом .portfolio-categ . Делаем все категории не активными, посредством удаления removeClass(«active»), если этого не делать то со временем все категории будут активными и фильтрация остановиться.

    Так как мы кликаем по элементу списка, то в селекторе this содержится элемент списка то есть li , у него мы берем значение атрибута class и с помощью метода split разбиваем название класса на несколько частей, границей является пробел (т.е. если класс был «all active» то после разбиения мы получаем массив из «all» и «active»). А уже далее методом slice выбираем первый элемент массива (в нашем случае «all»), и записываем получившийся результат в переменную filterClass . Если пробела не было то название класса не измениться.

    Далее проверяем если в переменной filterClass строка all , то методом .find выбираем все элементы с классом portfolio-item2 из массива $data , который мы рассматривали выше. Выбранные элементы (а это все элементы списка, то есть все картинки) помещаем в переменную filteredData .

    В противном случае, если filterClass не равна all , то в переменную filterData поместим не все элементы списка, а лишь те у которых атрибут data-type совпадает с классом категории. Короче говоря элементы только одной категории.

    И в конечном итоге полученную переменную передаем в библиотеку jquery quicksand , которая и производит фильтрацию картинок. Это все что касается фильтрации.

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

    1
    2
    3
    4
    5
    6
    7

    jQuery("a" ) .prettyPhoto ({
    animationSpeed: "fast" ,
    slideshow: 5000 ,
    theme: "facebook" ,
    show_title: false ,
    overlay_gallery: false
    } ) ;

    Отслеживается клик по ссылке, у которой атрибут rel начинается с prettyPhoto . После чего в дело вступает библиотека prettyPhoto , и изображение чудесным образом увеличивается. Кстати, мы также передаем несколько параметров. Такие как скорость анимации — быстрая, задержка у слайд шоу — 5 секунд, тема оформления Facebook (всего 5 тем они находятся в папке images/prettyPhoto), а также запрещаем показ названия картинки и увеличение картинки при наведении мыши. Полную документацию по prettyPhoto можно найти

    Чтобы оставаться в курсе свежих статей и уроков подписывайтесь на

    Много раз делал обзоры различных галерей изображений, собрал обширную коллекцию эффектных слайд-шоу и -плагинов. Есть в копилке и Lighbox исключительно на CSS3, без подключения дополнительных js-библиотек. Но время не стоит на месте, пользователи всё чаще используют для сёрфинга интернета различные мобильные устройства, а значит адаптивность веб-элементов и в частности фото-галерей с эффектом « » становится одним из приоритетов, на который веб-дизайнерам и разработчикам стоит обращать внимание.

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

    Смотрите демо на сайтах разработчиков, скачивайте понравившийся плагин и творите, творите, творите...

    1. iLightbox

    iLighbox — это лёгкий Лайтбокс-плагин jQuery с поддержкой широкого диапазона различных типов файлов: изображения, видео, Flash / SWF, содержание Ajax, фреймы и встроенные карты. Этот плагин также добавляет кнопки социальных сетей, что позволяет пользователям обмениваться контентом через Facebook, Twitter или Reddit. Отличная возможность организации эффектных слайд-шоу, галерей изображений и видео-роликов, с просмотром в обычном, и полноэкранном режимах.

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

    • Зависимость : jQuery
    • Поддержка браузерами : IE7+, Chrome, Firefox, Safari и Opera
    • Лицензия : А чёрт её знает)))
    2. SwipeBox

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

    • Зависимость : jQuery
    • Поддержка браузерами : IE9+, Chrome, Safari, Firefox, Opera, IOS4+, Android и Windows Phone
    • Лицензия : Не определил, может вам повезёт)))

    3. MagnificPopup

    Давно известный и хорошо себя зарекомендовавший лайтбокс-плагин на jQuery или Zepto.js. Автор плагина — Дмитрий Семенов, являющийся разработчиком и плагина PhotoSwipe, о котором расскажу чуть ниже. Поставляется в виде плагина jQuery/Zepto, имеет более широкие возможности отсутствующие в PhotoSwipe, такие как поддержка видео, отображение карт и Ajax содержания, реализация модальных окон с встроенными формами. По всем критериям, это ещё один замечательный инструмент в обойме веб-разработчика. Отдельно имеется плагин для WordPress и подробнейшая документация по настройке, и использованию. Удручает только отсутствие документации на Русском, судя по имени и фамилии автор вроде бы Русский, никогда не понимал из-за вредности это, или же из-за мнимого осознания своей навороченности, да мля. Ну да ладно, кому оно надо разберётся, мы тоже чай не всмятку сварены))).

    • Зависимость : jQuery 1.9.1+, или Zepto.js
    • Поддержка браузерами : IE7 (partially), IE8+, Chrome, Firefox, Safari и Opera
    • Лицензия : MIT license

    4. PhotoSwipe
    • Зависимость : Javascript или jQuery
    • Поддержка браузерами
    • Лицензия : MIT license

    11. FeatherLight

    6 к.битный lightbox-плагин, для более-менее подкованных разработчиков, снаряжен всеми самыми необходимыми функциями. Помимо поддержки всех распространённых типов контента(текст, изображения, iframe, Ajax), присутствует возможность подключения дополнительного , а также вы можете разработать своё собственное расширение для этого плагина, которое будет полностью соответствовать вашим потребностям при создании нового проекта. Как всё это хозяйство(разработка расширения) работает, особо не вникал, но те кого этот плагин вставит, думаю разберутся))).

    • Зависимость : jQuery
    • Поддержка браузерами : IE8+, Chrome, Firefox, Safari и Opera
    • Лицензия : MIT license

    12. LightGallery

    LightGallery — многофункциональный лайтбокс-плагин с множеством дополнительных возможностей. Поставляется с более чем 20 опций, для настройки мельчайших деталей Lightbox. Здесь есть всё, ну, или почти всё)). Полноценная галерея изображений с аккуратно выстроенными миниатюрами, с элементами навигации и прокруткой миниатюр. Простая html-разметка в виде неупорядоченного списка

      с использованием атрибута data-src для полноразмерных картинок. Тоже самое и с видео из Youtube и Vimeo. Замечательно поддерживает все форматы видео HTML5, MP4, WebM, Ogg... Анимированные миниатюры, адаптивный макет с поддержкой мобильных устройств, слайд-эффекты и плавные переходы появления при переключении изображений, и другого контента. Внешний вид легко формируется и настраивается с помощью CSS. Предварительная загрузка изображений и оптимизация кода. Навигация с помощью клавиатуры для десктопов, а также возможность использования дополнительных шрифт-иконок. LightGallery — вот где настоящий «комбайн», главное не потеряться в обилии настроек и обширных возможностях этого плагина.
      Тем кому нужен приличный слайдер, рекомендую обратить внимание на от этих же разработчиков.

      • Зависимость : jQuery
      • Поддержка браузерами : IE7+, Chrome, Firefox, Safari, Opera, iOS, Android и Windows Phone
      • Лицензия : MIT license

      13. StripJS

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

      • Зависимость : jQuery
      • Поддержка браузерами : IE7+, Chrome, Firefox, Safari, Opera, iOS 5+ и Android 3+
      • Лицензия : Creative Commons BY-NC-ND 3.0 license

      14. LightLayer

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

      • Зависимость : jQuery
      • Поддержка браузерами : IE9+, Chrome, Firefox, Safari и Opera
      • Лицензия : MIT license

      15. FluidBox

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

      • Зависимость : jQuery
      • Поддержка браузерами : IE9+, Chrome, Firefox, Safari, Opera
      • Лицензия : MIT license

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

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

      С Уважением, Андрей

      Сегодня мы рассмотрим jQuery плагин Flipping Gallery, который позволяет создавать классные галереи изображений с очень оригинальными переходами. В примере есть 5 видов переходов с использованием данного плагина. Плагин действительно очень прост в использовании, поэтому любой сможет с ним полноценно работать.

      Пример можно увидеть здесь:

      Скачать

      Мы рассмотрим более подробно как создать меню из Демо 2 , когда меню появляется слева вверху.

      HTML часть

      Сперва необходимо подключить библиотеку jQuery, которую можно скачать здесь и плагин Flipping Gallery , между тегами :

      1 2 3 4 5 6 ... ...

      Затем располагаем изображения. Вы можете добавлять столько изображений, сколько пожелаете:

      1 2 3 4 5 6 7 8 ...

      А чтобы добавить описание для изображений(как в демо 4 и 5) необходимо использовать атрибут data-caption :

      1 2 3 4 5 6 7 8 ...
      JS часть
      1 2 3 4 5 6 7 8 9 $(".gallery" ) .flipping_gallery ({ direction: "forward" , selector: "> a" , spacing: 10 , showMaximum: 15 , enableScroll: true , flipDirection: "bottom" , autoplay: 500 } ) ;

      Рассмотрим что означает каждый метод:

      • direction — метод отвечающий за то, как будут появляться изображения. Если «forward», то изображение из начала будет помещаться в конец, если «backward» — наоборот. По умолчанию значение задается «forward».
      • selector — селектор по которому выбираем изображения, его можно изменить по желанию.
      • spacing — задает отступ между изображениями в перспективе.
      • showMaximum — задает количество изображений, которые видны пользователю. Можно использовать хоть 100 изображений, но показываться будут только первые 15, что очень удобно и не нагружает браузер.
      • enableScroll — можно просматривать изображения используя колесо мыши.
      • flipDirection — определяет куда будет скользить изображение: «left» — влево, «right» — вправо, «top» — вверх и «bottom» — вниз. По умолчанию оно скользит вниз.
      • autoplay — автозапуск галереи. Задается в милисекундах, т.е. через сколько будут сменяться изображения.
      Вывод

      Теперь у вас есть великолепная галерея, которую можно использовать при размещении своих фотографий.

      1. jQuery галерея с эффектом перелистывания страницы

      Подобное решение можно использовать для вывода последних статей в блоге либо для презентации товаров.

      Уникальный способ отобразить ваши фотографии в виде jQuery необычной галереи.

      3. jQuery галерея изображений для товара, плагин «slideJS»

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

      Изображение увеличивается при наведении на него курсора мыши.

      5. Элегантная Lightbox галерея «ppGallery» 6. Мини-галерея jQuery «Touch-Gallery» 7. Новая jQuery галерея с миниатюрами

      Профессиональная jQuery галерея 2011 года.

      8. jQuery плагин «Nivo Zoom»

      Еще один качественный jQuery плагин от разработчиков Nivo слайдера. Увеличение изображение по нажатию на миниатюру.

      9. jQuery галерея «3d Wall Gallery»

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

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

      11. Необычное отображение изображений в jQuery галерее

      С помощью ползунка сверху можно изменить расстояние между изображениями в стопке. При нажатии на изображение оно поворачивается.

      12. Плагин jQuery галереи «MB.Gallery» 13. jQuery галерея, растягивающаяся на весь экран

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

      14. Легкая jQuery галерея

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

      16. Стильная галерея с использованием библиотек jQuery и Raphael

      Интересный эффект при наведении курсора мыши на миниатюру.

      17. Новая версия jQuery плагина «Supersized» версия 3.1

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

      18. jQuery плагин «Galleria 1.2.2»

      Новая jQuery галерея для ваших проектов.

      Галерея выплывает на странице по нажатию на кнопку. Миниатюры отображаются вокруг увеличенного изображения. Можно управлять автоматической сменой изображений. Используемые технологии: jQuery, CSS, PHP.

      20. Плагин «Timer Gallery»

      jQuery галерея. Реализована автоматическая смена слайдов и прокрутка миниатюр, если их слишком много.

      Плагин галереи изображений на jQuery.

      22. javascript галерея для просмотра на мобильных устройствах «PhotoSwipe»

      Галерея изображений, оптимизированная для просмотра на мобильных устройствах (телефонах или планшетах).

      23. javascript галерея с 3D эффектом 24. Галерея «jQuery morphing gallery»

      Новый jQuery слайдер. Несколько классных анимированных эффектов при смене слайдов.

      25. jQuery плагин «Galleria 1.2.3» 26. jQuery галерея изображений «Image Wall»

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

      27. CSS3 галерея

      Интересный эффект при наведении.

      28. Галерея с миниатюрами «TN3 Gallery»

      jQyery галерея с миниатюрами. Реализована возможность просмотра в компактном окне и в окне на весь экран, а также возможность отключать/включать автоматическую смену слайдов.

      29. Сетка изображений «Grid-Gallery»

      Сетка изображений растягивается в зависимости от ширины окна браузера. Интересный эффект при наведении: подсвечивается активный ряд и колонка.

      30. jQuery галерея «Swap Gallery»

      Легкая галерейка jQuery в несколько строк кода.

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

      31. Галерея изображений jQuery

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

      Изображение и его миниатюры выполнены в виде кругов.

      33. jQuery плагин портфолио фотографа «Portfolio Image Navigation»

      Оригинальное javascript решение для оформления портфолио фотографа. Навигация между изображениями осуществляется с помощью стрелок Вверх/Влево/Вправо и при помощи мини-квадратов (имитация перемещения в 2D пространстве). Можно сгруппировать фотографии из разных фото сессий в разные вертикальные ряды и перемещаться по ним с помощью элементов навигации. Смотрите демонстрацию.

      34. Плагин «jmFullZoom»

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

      35. Фото-карта

      Галерея интегрированная с Google картой. Можно развернуть на весь экран, нажав на иконку в правом нижнем углу. Отлично подойдет для туристических сайтов.

      36. Галерея изображений с миниатюрами

      jQuery галерея с миниатюрами.

      37. jQuery галерея «Galleriffic»

      Слайд-шоу с миниатюрами.

      38. jQuery CSS3 плагин «Wave Display Effect»

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

      Много вариантов отображения и настроек.

      42. Plogger 43. Простенькая симпатичная галерея, сделанная на CSS, без использования скриптов

      Красиво выглядит и отлично работает во всех современных браузерах

      Можно управлять автоматическим показом слайдов (старт/стоп), переключение слайдов с помощью стрелок клавиатуры, автоматическое постраничное разбиение названий слайдов, если их много, поддерживается несколько галерей на одной странице, подписи к слайдам, поддержка API и возможность создавать свои эффекты перехода слайдов

      46. Галерея в виде стопки фотографий

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

      Всем привет! Сегодня мы поговорим о возможно лучшей бесплатной фотогалереи, видео и фото слайдере, поговорим о "фотораме". Несмотря на то, что скрипт уже года 2 не поддерживается и автор переключился на проект схожей тематики он прекрасно работает и продолжает радовать глаз.

      Основные плюсы (+)

    • Простота установки, настройки и использования. Кроме jQuery, вам понадобится подключить всего 2 файла , а для вывода галереи там нужно указать только ссылки на картинки.
    • Незначительно влияет на скорость загрузки сайта.
    • Адаптивность . Ваша галерея выглядит хорошо и на телефоне, и на ноутбуке, и даже на экране телевизора.
    • Обилие настроек и функций, подключаемых отдельно, через атрибуты HTML тегов.
    • Поддержка сенсорных устройств.
    • Поддержка видео .
    • Возможность ленивой загрузки картинок.
    • И много-много всего другого, что придётся по душе искушённому пользователю.
    • Минусы (-)

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

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

    • Проверяем наличие jQuery. Зайдите в исходный код сайта (сочетание клавиш Ctrl + U) → пытаемся найти примерно такую строчку: https://ajax.googleapis.com/ajax/libs/jquery/X.X.X/jquery.min.js

      Для облегчения поиска используйте Ctrl + F . Если заветной строки нет, то вам придётся подключить jQuery. На WordPress это можно сделать вставив код, расположенный ниже, в файл функций темы (functions.php). На самом деле этот скрипт используется при конфликтах разных версий jQuery и действует он по такой схеме: удаляет зарегистрированный ранее jQuery, регистрирует новый, выводит скрипт. Актуальные версии библиотеки jQuery можно найти тут .

      Можно просто вставить такую строку между и :

    • Подключаем fotorama.css и fotorama.js. Вставьте следующий код между тегами и , на WordPress это делается в файле заголовка темы (header.php).
    • На этом подключение галереи первым способом окончено. Как использовать написано в разделе "Непосредственно создание галереи".
    • Второй вариант подключения [шорткод + Autoptimize]

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

    • Проверяем наличие jQuery. Так же как и в первом варианте, смотрите выше.
    • Скачиваем файлы фоторамы → распаковываем → загружаем в отдельную папку в корне сайта.
    • Для создания шорткода в файл функций темы (functions.php) вставляем код, расположенный ниже, изменяем ссылки к файлам на свои..js"> "; } add_shortcode("foto","sd");
    • Теперь при написании статьи в конце вводите шорткод
    • Непосредственно создание галереи

      Галерея выводится HTML кодом с помощью контейнера c class="fotorama" , в контейнере размещаются код вывода изображения либо ссылка на изображение . При написании статьи на движке WordPress переключите редактор в текстовый режим и введите контейнер c class="fotorama" .

      Выглядит это так:

      Или так (нумерация ссылок необязательна):

      1 3 4

      Примеры настроек FotoramaРазмеры контейнера

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

      Существуют и другие настройки:

      Data-width="98%" //относительная ширина data-ratio="800/600" //соотношение сторон data-minwidth="420" // мин. ширину data-maxwidth="900" // макс. ширину data-minheight="320" // мин. высота data-maxheight="100% // относительная макс. высота data-height="100% // относительная высота

      Миниатюры

      За миниатюры отвечает data-nav="thumbs"

      Но такой способ не очень эффективен, так как скрипту приходится загружать сразу все фотографии для генерации миниатюр, поэтому будет рациональнее заранее подготовить маленькие копии картинок. WordPress автоматически делает миниатюры, мы их и будем использовать. Чтобы получить ссылку на миниатюру добавьте -70x70 к названию файла (https://сайт/wp-content/uploads/2017/11/27ltl9eRXk.jpg → https://сайт/wp-content/uploads/2017/11/27ltl9eRXk-70x70.jpg).

      По умолчанию миниатюра - 64 × 64. Откорректировать этот параметр можно с помощью data-thumbwidth (ширина) и data-thumbheight (высота). Если вам нужно чтобы миниатюра имела свой собственный размер, то задайте параметры width и height для файла миниатюры:

      HTML-код + Fotorama

      Фоторама отлично обрабатывает HTML и CSS, что значительно расширяет функционал скрипта. Работайте со ссылками, блоками, таблицами, абзацами, пишите CSS и многое другое. Ниже представлены некоторые примеры работы галереи. Если визуальная часть не отображается, то нажмите кнопку "Result".

      Показать / Скрыть примеры

      See the Pen ooppwb by Ivanov Klim (@DreamerKlim) on CodePen.

      See the Pen aVEEVb by Ivanov Klim (@DreamerKlim) on CodePen.

      Полноэкранный режим data-allowfullscreen="true" //в окне браузера data-allowfullscreen="native" //на весь монитор

      Существует возможность добавить отдельное большое изображение для полноэкранного режима через data-full:

      Другое data-autoplay ="true" //автозапуск data-autoplay="3000" //интервал между слайдами в мс data-caption ="One" //комментарии к картинкам data-keyboard ="true" //навигация стрелками data-shuffle ="true" //изображения в разнобой data-navposition ="top" //миниатюры вверху data-loop ="true" //циклическая прокрутка Попробуем все соединить и добавить видео "какой-то коммент 1" > "какой-то коммент 2" >
      To find work you love