// 新しいウィンドウを開く
function openWindow(Url, Name, Features){
	var newwin = window.open(Url, Name, Features);
	newwin.focus();
}



// 画像オーバー時切り替え
function changeImage(This, Flag){
	var this_src = This.src;
	if(Flag == 1){
		This.src = this_src.replace('_off.', '_on.');
	}else{
		This.src = this_src.replace('_on.', '_off.');
	}
}

// 背景オーバー時切り替え
function changeBgimage(This, Flag){
	var this_classname = This.className;
	if(Flag == 1){
		This.className = this_classname.replace(/Off$|Off(\s)/, 'On$1');
	}else{
		This.className = this_classname.replace(/On$|On(\s)/, 'Off$1');
	}
}

// 子要素の色を交互に
function turnsColor(This){
	var tagname = This.tagName;
	var child = This.childNodes;
	var count = 0;
	//
	if(tagname == 'TABLE'){
		var tbody_elem = This.getElementsByTagName('TBODY');
		if(tbody_elem.length){
			child = tbody_elem[0].childNodes;
		}
	}
	//
	for(var i=0;i<child.length;i++){
		if(child[i].tagName){
			if(count%2 == 0){
				child[i].className = 'color4';
			} else {
				child[i].className = 'color3';
			}
			count++;
		}
	}
}

// 指定カラムごとにclear
function setPointColumn(This, Position){
	var tagname = This.tagName;
	var child = This.childNodes;
	var count = 0;
	//
	if(tagname == 'TABLE'){
		var tbody_elem = This.getElementsByTagName('TBODY');
		if(tbody_elem.length){
			child = tbody_elem[0].childNodes;
		}
	}
	//
	for(var i=0;i<child.length;i++){
		if(child[i].tagName){
			if(count%Position == 0){
				child[i].style.clear = 'left';
			}
			count++;
		}
	}
}

// 初期設定
function init(Target){
	var child = Target.childNodes;
	for(var i=0;i<child.length;i++){
		if(child[i].tagName){
			// 画像オーバー時切り替え
			if(child[i].className.search('changeImage') != -1){
				addEvent(child[i], 'mouseover', function(){
					changeImage(this,1);
				});
				addEvent(child[i], 'mouseout', function(){
					changeImage(this,0);
				});
			}
			// 背景オーバー時切り替え
			if(child[i].className.search('changeBgimage') != -1){
				addEvent(child[i], 'mouseover', function(){
					changeBgimage(this,1);
				});
				addEvent(child[i], 'mouseout', function(){
					changeBgimage(this,0);
				});
			}
			// 子要素の色を交互に
			if(child[i].className.search('turnsColor') != -1){
				turnsColor(child[i]);
			}
			// 指定カラムごとにclear
			if(child[i].className.search('columnlist') != -1){
				setPointColumn(child[i], 4);
			}
			// 再帰
			if(child[i].childNodes){
				init(child[i]);
			}
			//
		}
	}
}



// イベント登録（ブラウザ共通）
function addEvent(Target, Type, Listener){
	if (Target.addEventListener) {
		Target.addEventListener(Type, Listener, false);
	} else if (Target.attachEvent) {
		Target.attachEvent('on' + Type, function(){
			Listener.call(Target, window.event);
		});
	} else {
		Target['on' + Type] = function(e){
			Listener.call(Target, e || window.event);
		};
	}
}



// 初期処理
addEvent(window, 'load', function(){
	// 初期設定
	init(document.body);
});





















