var imagesOn = new Array();
var imagesOff = new Array();
var imgMap = new Array();
var allLoaded = false;

function preload() {
  var prefix = ""
  var suffixOn = "-hi"
  var suffixOff = ""
  var ext = ".gif"

  if (document.images) {
    var n = 0;
    for (var i = 0; i < document.images.length; i++) {
      if (document.images[i].name) {
        var thisImg = document.images[i];
        var imgName = thisImg.name;
        var path = srcName = thisImg.src;
        path = path.substring(0,path.lastIndexOf('/')+1);
        srcName = srcName.substring(srcName.lastIndexOf('/')+1,srcName.length);
        ext = srcName;
        ext = ext.substring(ext.lastIndexOf('.'),ext.length);
        srcName = srcName.substring(0,srcName.lastIndexOf('.'));
        imgMap[imgName] = srcName;

        if (imagesOn[srcName] == null || imagesOn[srcName] == "") {

          imagesOn[srcName] = new Image();
          imagesOn[srcName].src = path+prefix+srcName+suffixOn+ext;

          imagesOff[srcName] = new Image();
          imagesOff[srcName].src = path+prefix+srcName+suffixOff+ext;
        }
      }
    }
  }
  allLoaded = true;
}

function on(imgName) {
  swap('imagesOn', imgMap[imgName], imgName);
}

function off(imgName) {
  swap('imagesOff', imgMap[imgName], imgName);
}

function swap(imgArr,srcName,imgName) {
  if (document.images && allLoaded) {
    if (imgName == null || imgName == "") imgName = srcName;
    document.images[imgName].src = eval(imgArr+'[srcName].src');
  }
}
