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

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

ИСХОДНИКИ

HTML разметка

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


  • Категории:

  • Все

  • Категория 1

  • Категория 2

  • Категория 3

  • Категория 4







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




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

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

    Стили CSS

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

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

    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 код. Начнем с фильтрации картинок, по категориям.

    // Выбираем все дочерние элементы 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);

    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 , которая и производит фильтрацию картинок. Это все что касается фильтрации.

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

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

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

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

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

    Скачать

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

    HTML часть

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

    1 2 3 4 5 6 <head > ... <"http://code.jquery.com/jquery-1.9.1.js" > <script type = "text/javascript" src = "http://code.jquery.com/jquery.flipping_gallery.js" > ... </ head >

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

    1 2 3 4 5 6 7 8 <div class = "gallery" > <a href = "#" > <a href = "#" > <a href = "#" > <a href = "#" > <a href = "#" > ... </ div >

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

    1 2 3 4 5 6 7 8 <div class = "gallery" > <a href = "#" data-caption= "Очень" > <a href = "#" data-caption= "классная" > <a href = "#" data-caption= "галерея" > <a href = "#" data-caption= "с помощью" > <a href = "#" data-caption= "Flipping" > ... </ div >

    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 — автозапуск галереи. Задается в милисекундах, т.е. через сколько будут сменяться изображения.

    Вывод

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

    Всем привет! В этой статье мы рассмотрим, как сделать красивую и удобно сортируемую галерею на JQuery .

    Красивая, удобно сортируемая галерея – это прекрасная вещь для вашего сайта, которая будет радовать вас и ваших посетителей. Сегодня мы рассмотрим очень простой в установке и настройке плагин для библиотеки JQuery – Filterizr .

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

    Демонстрация

    Чтобы посмотреть, как работает плагин, зайдите на официальный сайт , и вот он уже перед вами!

    Вы можете выбрать сортировку по городам, природе, промышленности, рассвету, закату или показать все фотографии(значение по умолчанию). Присутствует кнопка Shuffle , которая позволит вам перемешать изображения. Кнопки ASC и DESC сортируют картинки по возрастанию и убыванию соответственно. Если вы хотите найти какое-то изображение по позиции или описанию, выберите нужный пункт в выпадающем списке и введите запрос в поле поиска. При наведении на изображение мышки картинка превращается из черно-белой в цветную.

    Установка

    Чтобы скачать библиотеку, нажмите кнопку Download или используйте NPM :

    Npm install filterizr

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

    1) Передать объект с параметрами в конструктор JQuery

    Var filterizd = $(".filtr-container").filterizr({
    // параметры
    })

    2) Переписать параметры, используя setOptions() метод в объекте Filterizr .

    Filterizd.filterizr("setOptions", {
    // параметры
    })

    Параметры

    Параметры по умолчанию:

    Options = {
    animationDuration: 0.5,
    callbacks: {
    onFilteringStart: function() { },
    onFilteringEnd: function() { }
    },
    delay: 0,
    delayMode: "progressive",
    easing: "ease-out",
    filter: "all",
    filterOutCss: {
    opacity: 0,
    transform: "scale(0.5)"
    },
    filterInCss: {
    opacity: 0,
    transform: "scale(1)"
    },
    layout: "sameSize",
    selector: ".filtr-container",
    setupControls: true
    }

    Более подробные инструкции и описание каждого параметра вы можете найти на

    Галереи изображений и слайдеры – одни из самых популярных форматов 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 эффектом и медленным появлением текста.

    Today, responsive design has become number one choice for designers and developers, as more and more people want their websites to run on smart devices. Responsive design draws mobile user’s attention and helps you to generate leads and sales which take your business to another level.

    Nowadays, you can create responsive layout for almost everything such as menu, grid, column and even pictures and images. If you want to display your website content, images and videos in a responsive gallery style then the following jQuery Image gallery plugins might help you out with it.

    This article includes some of the Best Responsive jQuery Image Gallery plugins which will not only enable you to create responsive image galleries for your websites but also display them in elegant styles to make your website more beautiful and visually stunning.

    Below is the list of Best Responsive jQuery Image Gallery Plugins worth considering in 2016 .

    Bootstrap Photo Gallery is a simple jQuery plugin that will create a Bootstrap based responsive Photo Gallery for your images.
    This plugin supports variable height for the images and captions. An optional “modal” box with “next” and “previous” paging is also included.
    Demo & Download

    2. JK Responsive YouTube and Image Gallery


    It is a modern, lightbox style gallery for displaying images and YouTube videos on your site. The gallery interface is fully responsive and works beautifully across all devices big or small.
    Demo & Download

    3. Faba


    FABA is responsive Facebook albums and photos gallery jquery plugin that will load all the albums and photos from selected Facebook Page.

    There are around 90 options you can edit and you can customize almost everything: animations, hover effects, every part of hover animations, text’s, behaviours, and many more. You can integrate beautiful albums into your project, or web page.


    xGallerify is a lightweight, responsive gallery plugin which allows you to create beautiful image galleries for your websites. This plugin is lightweight (3kb of file size) , easy to use and comes with number of customizable options and styles.
    Demo & Download


    Instagram Element is a premium Instagram plugin for bloggers, photographers, models, and anyone looking to increase their presence on Instagram.
    This plugin is fully responsive and allows you to easily manage 50+ options and lets you display your photos beautifully on any device.


    SnapGallery is a simple jQuery plugin that turns an ugly list of differently sized images into a beautiful, customizable gallery with one line of JavaScript.

    It’s completely responsive, customizable and allows you to select the spacing between images, the minimum width allowed before stacking and the maximum number of columns, with more options on the way!
    Demo & Download


    Eagle Gallery this is modern gallery with image zoom functionality. To manage the gallery you can use gestures or control buttons. This is a fully responsive gallery which has support touch screen and was created for mobile devices, laptops and desktops.

    With this gallery you can easily create a product gallery on your internet shop for detailed view and customize it with help of options.


    The Unite Gallery is multipurpose JavaScript gallery based on jQuery library. It’s built with a modular technique with a lot of accent of ease of use and customization. It’s very easy to customize the gallery, changing its skin via css, and even writing your own theme. Yet this gallery is very powerful, fast and has the most of nowadays must have features like responsiveness, touch enabled and even zoom feature, it’s unique effect.
    Demo & Download


    jQuery lightGallery is a lightweight jQuery lightbox gallery for displaying image and video gallery.

    Lightgallery supports touch and swipe navigation on touchscreen devices, as well as mouse drag for desktops. This allows users to navigate between slides by either swipe or mouse drag.

    Lightgallery comes with a numerous number of options, which allow you to customize the plugin very easily. You can easily customize the look and feel of the gallery by updating SASS variables.
    Demo & Download


    This is another great jQuery image gallery plugin which allows you to create grid layout gallery for your pictures and videos. This plugins is fully responsive and bundled with number of features like social sharing, infinite scrolling, css3 animations, filters and much more.


    blueimp Gallery is a touch-enabled, responsive and customizable image & video gallery, carousel and lightbox, optimized for both mobile and desktop web browsers.

    It features swipe, mouse and keyboard navigation, transition effects, slideshow functionality, fullscreen support and on-demand content loading and can be extended to display additional content types.
    Demo & Download


    nanoGALLERY is a touch enabled and responsive image gallery with justified, cascading and grid layout. It supports self hosted images and pulling in Flickr, Picasa, Google+ and SmugMug photo albums.

    Featuring multi-level navigation in albums, combinable hover effects on thumbnails, responsive thumbnail sizes, multiple layouts, slideshow, fullscreen, pagination, image lazy load and much more.
    Demo & Download


    flipGallery is a free jQuery powered photo gallery with sleek flipping transitions between thumbnails and lightbox enlargements. Other features include dynamic image streaming, auto pagination, auto cropping and transparent image overlay.

    This plugin also has a premium version which comes with few nifty features and certainly includes responsiveness.
    Demo & Download


    Fancy Gallery is responsive jQuery image gallery plugin which allows you to display your images and videos in fancy style. This plugins has lots of customization options and you can add unlimited albums, videos, pictures and much more.

    The plugin comes with different hover effects for the thumbnails and titles, which can also be adjusted. You can choose between 7 predefined color themes or just create your own color theme easily.


    Balanced Gallery is a jQuery plugin that evenly distributes photos across rows or columns, making the most of the space provided. Photos are scaled based on the size of the ‘container’ element by default, making Balanced Gallery a good choice for responsive websites.
    Demo & Download

    16. S Gallery


    S Gallery makes use of HTML5’s Full Screen API, and relies heavily on CSS3 animations goodness and CSS3 transforms, so it will work only in browsers that support these features.
    Demo & Download

    17. Ultimate Grid Responsive Gallery


    This is a HTML | CSS | JQuery Grid with a Lightbox, you can specify thumbnails for the grid and when you click on it to open the lightbox it will load the normal image, you can specify the text for the captions and for the lightbox. Also you don’t have to load all the images at once (for performance purposes) so you can specify the number of images to load when it first loads and the number of images to load when you click the “load more images” button.


    Responsive Thumbnail Gallery is a jQuery plugin for creating image galleries that scale to fit their container.
    Demo & Download


    SuperBox is a jQuery plugin that takes the whole ‘image’ and ‘lightbox’ one step further, reducing the JavaScript and image load dependence to make lightboxing a thing of the past! Using HTML5 data-* attributes, responsive layouts and jQuery.

    SuperBox works wonders as a static image gallery, which you can click to reveal a full version of the image.
    Demo & Download


    The Ultimate Thumbnail gallery is fully responsive image gallery plugin comes in two layout types (grid and line, vertical and horizontal), with scroll (jScrollPane) or button navigation. Thumbnail boxes support any HTML element inside them.