// require JQuery

/*
---------------------------------------------------------------------------
  bg_toggle.js
  Version 1.0  
  
  (C) Hidokeisha GK
  
  背景を変更する
---------------------------------------------------------------------------
*/

var BgToggle = {};

// 背景を変更する
BgToggle.switchBg = function(obj, to_over){
	var img;
	if( to_over ){
		img = obj.attr('_overbg');
	}
	else{
		img = obj.attr('_normalbg');
	}
	obj.css('background-image', img);
}

// 背景変更のイベントハンドラを設定する
BgToggle.prepareBgToggle = function(){
	$('*[bgtoggle]').each(function(){
		var bg = $(this).css('background-image');
		if( ! bg ){
			return;
		}
		
		var over_bg = bg.replace(/^(.*)\.(png|gif|jpg)/i, "$1_over.$2");
		
		$(this).attr('_normalbg', bg);
		$(this).attr('_overbg', over_bg);
		$(this).mouseover(function(){
			BgToggle.switchBg($(this), true);
		});
		$(this).mouseout(function(){
			BgToggle.switchBg($(this), false);
		});
		
		// Preload
		if( over_bg.match(/url\([']*(.+)[']*\)/i) ){
			var pre = RegExp.$1;
			if( pre.match(/^"(.+)"$/) ){
				pre = pre.replace(/^"(.+)"$/, "$1");
			}
			(new Image()).src = pre;
		}
	});
}



