jQuery(function() { var activityIndicatorOn = function() { jQuery( '
' ).appendTo( 'body' ); }, activityIndicatorOff = function() { jQuery( '#imagelightbox-loading' ).remove(); }, overlayOn = function() { jQuery( '
' ).appendTo( 'body' ); }, overlayOff = function() { jQuery( '#imagelightbox-overlay' ).remove(); }, closeButtonOn = function( instance ) { jQuery( 'Close' ).appendTo( 'body' ).on( 'click touchend', function(){ jQuery( this ).remove(); instance.quitImageLightbox(); return false; }); }, closeButtonOff = function() { jQuery( '#imagelightbox-close' ).remove(); }, captionOn = function() { var description = jQuery( 'a[href="' + jQuery( '#imagelightbox' ).attr( 'src' ) + '"] img' ).attr( 'alt' ); if( description.length > 0 ) jQuery( '
' + description + '
' ).appendTo( 'body' ); }, captionOff = function() { jQuery( '#imagelightbox-caption' ).remove(); }, navigationOn = function( instance, selector ) { var images = jQuery( selector ); if( images.length ) { var nav = jQuery( '
' ); for( var i = 0; i < images.length; i++ ) nav.append( '' ); nav.appendTo( 'body' ); nav.on( 'click touchend', function(){ return false; }); var navItems = nav.find( 'a' ); navItems.on( 'click touchend', function() { var jQuerythis = jQuery( this ); if( images.eq( jQuerythis.index() ).attr( 'href' ) != jQuery( '#imagelightbox' ).attr( 'src' ) ) instance.switchImageLightbox( jQuerythis.index() ); navItems.removeClass( 'active' ); navItems.eq( jQuerythis.index() ).addClass( 'active' ); return false; }) .on( 'touchend', function(){ return false; }); } }, navigationUpdate = function( selector ) { var items = jQuery( '#imagelightbox-nav a' ); items.removeClass( 'active' ); items.eq( jQuery( selector ).filter( '[href="' + jQuery( '#imagelightbox' ).attr( 'src' ) + '"]' ).index( selector ) ).addClass( 'active' ); }, navigationOff = function() { jQuery( '#imagelightbox-nav' ).remove(); }; var nprGallerys = 'a[rel="npr_gallery"]'; var nprGallery = jQuery( 'a[rel="npr_gallery"]' ).imageLightbox({ onStart: function() { overlayOn(); navigationOn( nprGallery, nprGallerys ); closeButtonOn( nprGallery ); }, onEnd: function() { navigationOff(); overlayOff(); captionOff(); closeButtonOff(); activityIndicatorOff(); }, onLoadStart: function() { captionOff(); activityIndicatorOn(); }, onLoadEnd: function() { navigationUpdate( nprGallerys ); captionOn(); activityIndicatorOff(); } }); });