  
			  
function ImagePreload( pathA, pathB, id )
{   
    this.Preload( pathA, id, pathB );
}

ImagePreload.prototype.Preload = function( p_oImage, id, pathB )
{   
    var oImage = document.getElementById(id);
    
    oImage.onload = ImagePreload.prototype.OnLoad;
    oImage.onerror = ImagePreload.prototype.OnError;
    oImage.onabort = ImagePreload.prototype.OnAbort;
    
    oImage.pathB=pathB;
    oImage.oImagePreload = this;
    oImage.bLoaded = false;
    oImage.source = p_oImage;
    oImage.src = p_oImage;
}

ImagePreload.prototype.OnLoad = function()
{   // 'this' pointer points to oImage Object
    this.style.display="";
}

ImagePreload.prototype.OnError = function()
{   // 'this' pointer points to oImage Object
    if (this.pathB!="") {
        this.oImagePreload.Preload( this.pathB, this.id, "" );
    } 
}

ImagePreload.prototype.OnAbort = function()
{   // 'this' pointer points to oImage Object
    this.bAbort = true;
    this.style.display="";
}

function StartPreload(pathA, pathB, id)
{
    var oPreload = new ImagePreload(pathA, pathB, id);
}
