/*
	Standards Compliant Rollover Script
	Author : Daniel Nolan
	http://www.bleedingego.co.uk/webdev.php
*/

function initRollovers() {
	if (!document.getElementById) return

	resetRollover();

	var aPreLoad = new Array();
	var sTempSrc;
	var aImages = document.getElementsByTagName('img');
	
	for (var i = 0; i < aImages.length; i++) {
		if (aImages[i].className == 'imgover' || aImages[i].className == 'imgovered') {
			var src = aImages[i].getAttribute('src');
			var ftype = src.substring(src.lastIndexOf('.'), src.length);
			var hsrc = src.replace(ftype, '_o'+ftype);

			
			if (aImages[i].className == 'imgover'){
				aImages[i].setAttribute('hsrc', hsrc);
			
				aPreLoad[i] = new Image();
				aPreLoad[i].src = hsrc;

				aImages[i].onmouseover = function() {
					sTempSrc = this.getAttribute('src');
					this.setAttribute('src', this.getAttribute('hsrc'));
				}	
			
				aImages[i].onmouseout = function() {
					if (!sTempSrc) sTempSrc = this.getAttribute('src').replace('_o'+ftype, ftype);
					this.setAttribute('src', sTempSrc);
				}
			}else if (aImages[i].className == 'imgovered'){
				aImages[i].src = hsrc;
			}
		}
	}
}


function resetRollover() {
	if(document.getElementsByTagName) {
		var images = document.getElementsByTagName("img");
		for(var i=0; i < images.length; i++) {
			if(images[i].getAttribute("src").match("_o.") && ( images[i].className == "imgover" || images[i].className == "imgovered"  )) {
				images[i].setAttribute("src", images[i].getAttribute("src").replace("_o.", "."));
			}
		}
	}
}

try{
	window.addEventListener("load", initRollovers, false);
}catch(e){
	window.attachEvent("onload", initRollovers);
}


// Firefoxで、戻る操作後にロールオーバー時の画像がキャッシュとして
//	読み込まれる問題に対応する
try{
	window.addEventListener("pageshow", initRollovers, false);
}catch(e){
	window.attachEvent("onpageshow", initRollovers);
}


