   (function($) {
     var cache = [];
     // Arguments are image paths relative to the current page.
     $.preLoadImages = function() {
       var args_len = arguments.length;
       for (var i = args_len; i--;) {
         var cacheImage = document.createElement('img');
         cacheImage.src = arguments[i];
         cache.push(cacheImage);
       }
     }
   })(jQuery)

   var myImages = new Array();
   var myCurrent = 99;
   
   function loadText(myIndex) {
      myTxt = $.myImages[myIndex].txt;
      
      textSpan = $('div#bannerTxt');
      
      textSpan.slideUp(700,function(){
         $('div#txt').html(myTxt);
      });
      
      textSpan.slideDown(500)
   }
   
   function loadImage (myIndex) {
      url = $.myImages[myIndex].file
      alt = $.myImages[myIndex].alt
      
      img = $('img#bannerImg');
      img 
      .fadeOut(500, function(){
         img.attr('src', url);
         img.attr('alt', alt);
      })
      .fadeIn(700)
   }
   
   function reloadText (textSpan, html) {
      textSpan.html(html);
   }

   function nextSlide () {
      var c = $.myCurrent;
      c++;
      
      if (c >= $.myImages.length) {c = 0};
      
      loadImage(c);
      loadText(c);
      
      $.myCurrent = c;
   }
   
   function prevSlide () {
      var c = $.myCurrent;
      c--;
      
      if (c < 0) 
      {
         c = $.myImages.length-1
      };
      
      loadImage(c);
      loadText(c);
      
      $.myCurrent = c;
   }
   
   $(document).ready(function() {
      $('a#nextImg').click(function(){
         nextSlide();
      });
      
      $('a#prevImg').click(function(){
         prevSlide();
      });
      $.each($.myImages, function(i){
         $.preLoadImages($.myImages[i].file);
      });
      
      
      loadImage($.myCurrent);
      loadText($.myCurrent);
   });

