/*【画像ロールオーバー機能】
==================================================================================================== */

var RollOverImage = {
	
	/* ロールオーバー処理用クラス名
	==================================================================================================== */
	className:"rollover",
	
	
	/* 対象エレメントリスト
	==================================================================================================== */
	eleList:[],
	
	
	/* イベント設定
	==================================================================================================== */
	bind:function(obj,type,fn){
		(obj.addEventListener)?obj.addEventListener(type,fn,false):(obj.attachEvent)?obj.attachEvent("on"+type,function(){fn.call(obj,window.event);}):obj["on"+type]=function(e){fn.call(obj,e||window.event);}
	},
	
	
	/* 初期化実行設定
	==================================================================================================== */
	init:function(){
		var arg = arguments;
		for(var i=0,l=arg.length;i<l;i++) this.eleList.push(arg[i]);
		this.bind(window,"load",this.setUp);
	},
	
	
	/* セットアップ
	==================================================================================================== */
	setUp:function(){
		for(var i=0,l=RollOverImage.eleList.length;i<l;i++){
			var ele = document.getElementsByTagName(RollOverImage.eleList[i]);
			for(var j=0,m=ele.length;j<m;j++){
				if(ele[j].className.match(RollOverImage.className)){
					RollOverImage.preLoad(ele[j].src.replace(/_off\./i,"_ov."));
					RollOverImage.bind(ele[j],"mouseover",RollOverImage.mouseover);
					RollOverImage.bind(ele[j],"mouseout",RollOverImage.mouseout);
				}
			}
		}
	},
	
	
	/* プリロード
	==================================================================================================== */
	preLoad:function(){
		if(document.images){
	 	var loadedImg = new Array();
	 	var arg = arguments;
	 	for(i=0,l=arg.length;i<l;i++){
	 		loadedImg[i] = new Image();
	 		loadedImg[i].src = arg[i];
	 	}
	 }
	},
	
	
	/* ロールオーバー
	==================================================================================================== */
	mouseover:function(obj){
		var target = (obj.src)?obj:this;
		target.src = target.src.replace(/_off\./i,"_ov.");
	},
	
	
	/* ロールアウト
	==================================================================================================== */
	mouseout:function(obj){
		var target = (obj.src)?obj:this;
		target.src = target.src.replace(/_ov\./i,"_off.");
	}
	
};

//初期化
RollOverImage.init("img","input");
