onLoad(getHoverImages);
var _GHI_DONE = false;
var preloads = new Array();
function hoverImage(img)
{
	var id = img.id;
	if (typeof id != 'string') return;	
	else img.src = (img.src == preloads[id][0].src) ? preloads[id][1].src : preloads[id][0].src ;
}
function hoverBackgroundImage(el)
{
	var id = el.id;
	if (typeof id != 'string') return;
	else el.style.backgroundImage = (el.style.backgroundImage == preloads[id][0].style.backgroundImage) ? preloads[id][1].style.backgroundImage : preloads[id][0].style.backgroundImage ;
}
function getHoverImages()
{
	if ( _GHI_DONE ) return;
	_GHI_DONE = true;
	
	var els = document.getElementsByClassName('imgHover');
	if (typeof els == 'undefined') return;
	
	for (var i=0; i<els.length; i++)
	{
		var el = els[i];
		var isImage;
		try { isImage = el.tagName.toLowerCase() == 'img'; }
		catch (e) { isImage = false; };
		
		if ( isImage )
		{
			var src = el.src.split('.');
			var ext = src.pop();
			src = src.join('.');
			
			var normal = new Image();
			var hover = new Image();
			normal.src = el.src;
			hover.src = src+'_over.'+ext;
			
			el.id = normal.id = hover.id = preloads.length;
			el.onmouseover = el.onmouseout = function() { hoverImage(this); };
			preloads[preloads.length] = new Array(normal,hover);
		}
		else
		{
			var url = el.style.backgroundImage;
			if ( typeof url != 'string' || url == '' ) continue;
			else
			{
				if ( url.match(/^url/i) ) url = url.substr(4);
				if ( url.match(/\)$/) ) url = url.substr(0,url.length-1);
				
				var src = url.split('.');
				var ext = src.pop();
				src = src.join('.');
				
				var normal = document.createElement('div');
				var hover = document.createElement('div');
				normal.style.backgroundImage = 'url('+src+'.'+ext+')';
				hover.style.backgroundImage = 'url('+src+'_over.'+ext+')';
				
				el.id = normal.id = hover.id = preloads.length;
				el.onmouseover = el.onmouseout = function() { hoverBackgroundImage(this); };
				preloads[preloads.length] = new Array(normal,hover);
			}
		}
	}
}

