nanoGALLERY: Implement image gallery easily.

nanoGALLERY jquery plugin : Very easy to implement image gallery. It is touch enabled, responsive, fast and it supports cloud storage.

Featuring multi-level navigation in albums, lightbox, many hover effects on thumbnails, slideshow, fullscreen, pagination, image lazy load, themes, bootstrap compatibility, customizable, i18n, and pulling in Flickr/Picasa/Google+ photo albums among others.

Feature list

Spice up your Portfolio with eye-catching effects.

  • Image Gallery : Display thumbnails with title and description. Thumbnail size is configurable. Galleries are displayed with smooth animation. Support for pagination.
  • Integrated Lightbox : Images are displayed in full view via a modal popup window. Display images with title and description.
  • Hover Effects : Easy setup of thumbnail hover animation. Effects can be combined for more possibilities. 2D/3D effects available. Effects are touchscreen friendly.
  • Title and Description : Are displayed on thumbnails as well as on images. Support HTML tags.
  • Mobile Friendly : Touchscreen enabled and responsive.
  • CSS3 Acceleration : Support CSS3 acceleration on modern browser. Compatible with older browser too.
  • User Friendly : Easy to use. Support browser BACK button. Can be controlled using mouse, keyboard or gesture.
  • Multi-Level Navigation : Breadcrumb to support navigation in photo albums. Unlimited number of sub-levels.
  • Online Photo Storage : Display images stored in Picasa/Google+ and in Flickr. No need to upload images manually to your site. New published images are automatically displayed in the gallery.

Download: https://github.com/Kris-B/nanoGALLERY

Demonstration: https://nanogallery2.nanostudio.org/

Plugin homepage: https://nanogallery2.nanostudio.org/

Implementation:

1. Include JS and CSS files

<!-- Add jQuery library (mandatory) -->
<script type="text/javascript" src="third.party/jquery-1.8.2.min.js"></script> 
 
<!-- Add Transit plugin (optional - this is only required for some hover effects) -->
<script type="text/javascript" src="third.party/transit/jquery.transit.min.js"></script> 
 
<!-- Add Hammer.js plugin (optional - this is only required for gesture support) -->
<script type="text/javascript" src="third.party/hammer.js/hammer.min.js"></script> 
 
<!-- Add nanoGALLERY plugin files (mandatory) -->
<link href="css/nanogallery.css" rel="stylesheet" type="text/css">
<script type="text/javascript" src="jquery.nanogallery.js"></script>

Example 1 : list of images using HREF attribute

<!-- First, write your HTML -->
<div id="nanoGallery">
    <a href="image_01.jpg" 
        data-ngThumb="image_01t.jpg"
        data-ngDesc="Description1">Image1</a>
    <a href="image_02.jpg" 
        data-ngThumb="image_02t.jpg" 
        data-ngDesc="Description2">Image2</a>
    <a href="image_03.jpg"
        data-ngThumb="image_03t.jpg"
        data-ngDesc="Description3">Image3</a>
</div>
<script type="text/javascript">
  $(document).ready(function(){
    jQuery("#nanoGallery").nanoGallery({
        thumbnailWidth: 120,
        thumbnailHeight: 80,
        thumbnailHoverEffect:'borderLighter,descriptionSlideUp',
        itemsBaseURL:'http://brisbois.fr/nanogallery4/demonstration'
    });
  });
</script>

Example 2 : list of images passed to the script (API)

<!-- First, write your HTML -->
<div id="nanoGallery"></div>
<script type="text/javascript">
  $(document).ready(function(){
    jQuery("#nanoGallery").nanoGallery({
        thumbnailWidth: 120,
        thumbnailHeight: 120,
        items: [{
            src: 'image_01.jpg', // image
            srct: 'image_01t.jpg', // thumbnail
            title: 'image 1', // title
            description: 'Description 1' // description
        }, {
            src: 'image_02.jpg',
            srct: 'image_02t.jpg',
            title: 'image 2'
        }, {
            src: 'image_03.jpg',
            srct: 'image_03t.jpg',
            title: 'image 3'
        }],
        itemsBaseURL: 'http://brisbois.fr/nanogallery4/demonstration/',
        thumbnailLabel: {
            display: true,
            position: 'overImageOnBottom'
        },
        thumbnailHoverEffect:'borderLighter'
    });
  });
</script>

Example 3 : Google+ / Picasa photos

<!-- First, write your HTML -->
<div id="nanoGallery"></div>
<script type="text/javascript">
  $(document).ready(function(){
    jQuery("#nanoGallery").nanoGallery({
        kind: 'picasa',
        userID: 'xxx@gmail.com',
        album: 'xxxxxx',                //remove this line to display all the albums
        thumbnailWidth: 144,
        thumbnailHeight: 144,
        thumbnailHoverEffect:'borderLighter'
    });
  });
</script>

Example 4 : Flickr photos

<!-- First, write your HTML -->
<div id="nanoGallery"></div>
<script type="text/javascript">
  $(document).ready(function(){
    jQuery("#nanoGallery").nanoGallery({
        kind: 'flickr',
        userID: '34858669@N00',
        photoset:'72157594299597591',           //remove this line to display all the photosets
        thumbnailWidth: 125,
        thumbnailHeight: 125,
        thumbnailHoverEffect:'borderLighter,descriptionSlideUp'
    });
  });
</script>

Options:

Screenshots:

How a Loop Through a JavaScript Object?

How a Loop through a JavaScript object?Javascript Objects are Variables Containing Variables.In Java…

How to Search Item in List in JavaScript

Multi Step Form Using HTML and JavaScript

Form is the important part in web design. Form is the primary interface to the user by which user is…

How to Create Custom CSS, jQuery Autocomplete Plugin

Web developers often use autocomplete features in websites as a part of their work. Yet lot of good …

How to Make Sticky Sidebar Using jQuery and CSS

Sticky sidebar is an essential part of web development. Not in all cases but for some cases where ou…

Selectors, Animation, and AJAX – jQuery Tutorial And Examples

By now I’m sure you have grasped at least the basics and simplicity of the jQuery library. Now it’s …