$(document).ready(function() { //Execute the slideShow, set 8 seconds for each images if($('ul.slideshow').length) { slideShow(6000); } }); function slideShow(speed) { //append a LI item to the UL list for displaying caption $('ul.slideshow').append('
  • '); //Set the opacity of all images to 0 $('ul.slideshow li').css({opacity: 0.0}); //Get the first image and display it (set it to full opacity) $('ul.slideshow li:first').css({opacity: 1.0}).addClass('show'); //Display the caption $('#slideshow-caption').css({opacity: 0.7, bottom:0}); var title = $('ul.slideshow li.show').find('img').attr('title') var desc = $('ul.slideshow li.show').find('img').attr('alt'); if(title.length) { //Get the caption of the first image from REL attribute and display it $('#slideshow-caption h3').html(title); $('#slideshow-caption p').html(desc); $('#slideshow-caption').delay(speed/4).slideToggle(1000).delay(speed/3).slideToggle(1000); } //Call the gallery function to run the slideshow var timer = setInterval('gallery('+speed+')',speed); } function gallery(speed) { //if no IMGs have the show class, grab the first image var current = ($('ul.slideshow li.show')? $('ul.slideshow li.show') : $('#ul.slideshow li:first')); //trying to avoid speed issue if(current.queue('fx').length == 0) { //Get next image, if it reached the end of the slideshow, rotate it back to the first image var next = ((current.next().length) ? ((current.next().attr('id') == 'slideshow-caption')? $('ul.slideshow li:first') :current.next()) : $('ul.slideshow li:first')); //Get next image caption var title = next.find('img').attr('title'); var desc = next.find('img').attr('alt'); //Set the fade in effect for the next image, show class has higher z-index next.css({opacity: 0.0}).addClass('show').animate({opacity: 1.0}, speed/4); if(title.length) { $('#slideshow-caption h3').html(title); $('#slideshow-caption p').html(desc); $('#slideshow-caption').delay(speed/4).slideToggle(1000).delay(speed/3).slideToggle(1000); } //Hide the current image current.animate({opacity: 0.0}, speed/4).removeClass('show'); } }