  var Rollover = Class.create()
      Rollover.prototype = {
        _down: false,
        _img: null,
        _img_orig: null,
        _img_roll: null,
        
        initialize: function (img) {
          this._img = img;
          this._img_orig = this._img.src;
          this._img_roll = this._img.src.substr(0, this._img.src.length-4) + '-over.png';
        
          var x = new Image();
          x.src = this._img_roll; // Preload rollover image
        
          this.openListener = this.rollOn.bindAsEventListener(this);
          this.closeListener = this.rollOff.bindAsEventListener(this);
        
          Event.observe(img, 'mouseover', this.openListener);
          Event.observe(img, 'mouseout', this.closeListener);
        },
        
        rollOn: function () {
          if (this._down == false){
            this._down = true;
            this._img.src = this._img_roll; // Change the image to the rollover
          }
        },
        
        rollOff: function () {
          if (this._down == true){
            this._down = false;
            this._img.src = this._img_orig; // Change the image back to the original
          }
        }
      };
