/* Simple library to swap out images on an element when hovering over trigger elements
 * Original version by Jason Stirk (http://griffin.oobleyboo.com/projects/image_swap_js)
 * Changelog :
 *   - 28Feb2008  initial release
 */
var ImageSwapper = Class.create();
ImageSwapper.prototype = {
  imageElement: null,
  defaultSrc: null,
  images: {},
  
  initialize: function(element, src) {
    element=$(element);
    element.src=src;
    this.imageElement=element;
    this.defaultSrc=src;
  },
  
  // Add events to trigger element to replace the image's src with the
  // specified image on mouseover, and remove on mouseout.
  register: function(trigger, src) {
    trigger=$(trigger);
    // Load the images now, so as that they hopefully won't be loaded when the user scrolls
    i=new Image();
    i.src=src;
    this.images[trigger.id]=i;
    is=this;
    trigger.onmouseover = function() { is.imageElement.src=is.images[trigger.id].src; }
    trigger.onmouseout = function() { is.imageElement.src=is.defaultSrc; }
  }
}
