From 66bf57fb29f6b25e2258ab966bf13f7a44889cfc Mon Sep 17 00:00:00 2001 From: Victor Häggqvist Date: Fri, 27 Jun 2014 17:23:35 +0200 Subject: break out demo js --- demo.js | 125 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ index.php | 137 +------------------------------------------------------------- 2 files changed, 126 insertions(+), 136 deletions(-) create mode 100644 demo.js diff --git a/demo.js b/demo.js new file mode 100644 index 0000000..cae2059 --- /dev/null +++ b/demo.js @@ -0,0 +1,125 @@ +$( function() { + + // Show and hide loader + var activityIndicatorOn = function() { + $('
' ).appendTo('body'); + }, + activityIndicatorOff = function() { + $('#imagelightbox-loading').remove(); + }, + + // Show and hide overlay + overlayOn = function() { + $('
').appendTo('body'); + }, + overlayOff = function() { + $('#imagelightbox-overlay').remove(); + }, + + // Show and hide close button + closeButtonOn = function(instance) { + $('Close').appendTo('body').on('click touchend', function(){ $(this).remove(); instance.quitImageLightbox(); return false; }); + }, + closeButtonOff = function() { + $('#imagelightbox-close').remove(); + }, + + // Show and hide caption + captionOn = function() { + var description = $('a[href="' + $('#imagelightbox').attr('src') + '"] img').attr('alt'); + if(description.length > 0) + $('
' + description + '
').appendTo('body'); + }, + captionOff = function() { + $('#imagelightbox-caption').remove(); + }, + + // Show, hide and keep navigation boubble updated + navigationOn = function(instance, selector) { + var images = $(selector); + if (images.length) { + var nav = $('
'); + 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 $this = $(this); + if (images.eq($this.index()).attr('href') != $('#imagelightbox').attr('src')) + instance.switchImageLightbox($this.index()); + + navItems.removeClass('active'); + navItems.eq($this.index()).addClass('active'); + + return false; + }) + .on('touchend', function(){ return false; }); + } + }, + navigationUpdate = function(selector) { + var items = $('#imagelightbox-nav a'); + items.removeClass('active'); + items.eq( $( selector ).filter('[href="' + $('#imagelightbox').attr('src') + '"]').index( selector ) ).addClass('active'); + }, + navigationOff = function() { + $('#imagelightbox-nav').remove(); + }; + + // WITH ACTIVITY INDICATION + $('a[data-imagelightbox="0"]').imageLightbox( + { + onLoadStart: function() { activityIndicatorOn(); }, + onLoadEnd: function() { activityIndicatorOff(); }, + onEnd: function() { activityIndicatorOff(); } + }); + + // WITH OVERLAY & ACTIVITY INDICATION + $('a[data-imagelightbox="1"]').imageLightbox( + { + onStart: function() { overlayOn(); }, + onEnd: function() { overlayOff(); activityIndicatorOff(); }, + onLoadStart: function() { activityIndicatorOn(); }, + onLoadEnd: function() { activityIndicatorOff(); } + }); + + // WITH "CLOSE" BUTTON & ACTIVITY INDICATION + var instanceTwo = $('a[data-imagelightbox="2"]').imageLightbox( + { + quitOnDocClick: false, + onStart: function() { closeButtonOn( instanceTwo ); }, + onEnd: function() { closeButtonOff(); activityIndicatorOff(); }, + onLoadStart: function() { activityIndicatorOn(); }, + onLoadEnd: function() { activityIndicatorOff(); } + }); + + // WITH CAPTION & ACTIVITY INDICATION + $('a[data-imagelightbox="3"]').imageLightbox( + { + onLoadStart: function() { captionOff(); activityIndicatorOn(); }, + onLoadEnd: function() { captionOn(); activityIndicatorOff(); }, + onEnd: function() { captionOff(); activityIndicatorOff(); } + }); + + // WITH DIRECTION REFERENCE + var selectorFour = 'a[data-imagelightbox="4"]'; + var instanceFour = $(selectorFour).imageLightbox( + { + onStart: function() { navigationOn( instanceFour, selectorFour ); }, + onEnd: function() { navigationOff(); activityIndicatorOff(); }, + onLoadStart: function() { activityIndicatorOn(); }, + onLoadEnd: function() { navigationUpdate( selectorFour ); activityIndicatorOff(); } + }); + + // ALL COMBINED + var instanceF = $('a[data-imagelightbox="5"]').imageLightbox( + { + onStart: function() { overlayOn(); closeButtonOn( instanceF ); }, + onEnd: function() { overlayOff(); captionOff(); closeButtonOff(); activityIndicatorOff(); }, + onLoadStart: function() { captionOff(); activityIndicatorOn(); }, + onLoadEnd: function() { captionOn(); activityIndicatorOff(); } + }); + +}); diff --git a/index.php b/index.php index 81f6f08..2d70448 100644 --- a/index.php +++ b/index.php @@ -57,141 +57,6 @@ $headings = array( - + -- cgit v1.2.3