/* ====================================
  File        : rollover.js
  Date        : 2006.08.29
  Last Update : 2006.08.29
===================================== */
/* ------------------------------
 conf
------------------------------ */
// class
var ROCLS = 'rollover';

// postfix
var ROPOSTFIX = '_on';


/* ------------------------------
 don't modify.
------------------------------ */
rolloverCls = function(){
	var preImgs = new Array();
	var elements = $$('.' + ROCLS);
	var len = elements.length;
	for(var i = 0; i < len; i++){
		var element = elements[i];
		if(element.tagName.toLowerCase() == 'img'){
			var target = element;
			while(target.tagName.toLowerCase() != 'body' && target.tagName.toLowerCase() != 'a'){
				target = target.parentNode;
			}
			if(target.tagName.toLowerCase() == 'body'){
				target = element;
			}
			target.onmouseout = this.changeRolloverSrc(element, element.src);
			target.onmouseover = this.changeRolloverSrc(element, element.src.replace(/(\.gif|\.jpg|\.png)/, ROPOSTFIX + "$1"));
			preImgs[preImgs.length] = new Image();
			preImgs[preImgs.length-1].src = element.src.replace(/(\.gif|\.jpg|\.png)/, ROPOSTFIX + "$1");
		}else if(element.tagName.toLowerCase() == 'input' && element.getAttribute('type').toLowerCase() == 'image'){
			element.onmouseout = this.changeRolloverSrc(element, element.src);
			element.onmouseover = this.changeRolloverSrc(element, element.src.replace(/(\.gif|\.jpg|\.png)/, ROPOSTFIX + "$1"));
			preImgs[preImgs.length] = new Image();
			preImgs[preImgs.length-1].src = element.src.replace(/(\.gif|\.jpg|\.png)/, ROPOSTFIX + "$1");
		}else if(element.tagName.toLowerCase() == 'area'){
			var target = element;
			while(target.tagName.toLowerCase() != 'body' && target.tagName.toLowerCase() != 'map'){
				target = target.parentNode;
			}
			var targetName = target.id;
			targets = $$('img[usemap="#' + targetName + '"]');
			target = targets[0];
			element.onmouseout = this.changeRolloverSrc(target, target.src);
			element.onmouseover = this.changeRolloverSrc(target, target.src.replace(/(\.gif|\.jpg|\.png)/, '_' + element.id + "$1"));
			preImgs[preImgs.length] = new Image();
			preImgs[preImgs.length-1].src = target.src.replace(/(\.gif|\.jpg|\.png)/, '_' + element.id + "$1");
		}
	}
};

rolloverCls.prototype = {
	changeRolloverSrc : function(node, data){
		return function(){
			node.src = data;
		}
	}
};

Event.observe(window, 'load', function(){
	new rolloverCls();
}, false);


