// イベントリスナー登録
function addListener(elem, eventType, funcRef, capture) {
    if(!elem) { return false; }

    if(elem.addEventListener) {
        elem.addEventListener(eventType, funcRef, capture);
    } else if(elem.attachEvent) {
        elem.attachEvent('on' + eventType, funcRef);
    } else {
        return false;
    }
    return true;
}

// イベント追加
function addEvent(tagName,eventName,funcName,bFlag)
{
	elems = document.getElementsByName(tagName)

	if(window.addEventListener)
	{
		for (i = 0; i < elems.length; i++)
		{
			elems[i].addEventListener(eventName,funcName,bFlag);
		}
	}else{
		for (i = 0; i < elems.length; i++)
		{
			elems[i].attachEvent("on"+eventName,funcName);
		}

	}
}
// イベント削除
function removeEvent(tagName,eventName,funcName,bFlag)
{
	if(window.removeEventListener)
	{
		document.getElementById(tagID).removeEventListener(eventName,funcName,bFlag);
	}else{
		document.getElementById(tagID).detachEvent("on"+eventName,funcName);
	}

}
// イベントバブルアップ停止
function cancelEvent(evtObj)
{
	if(window.addEventListener)
	{
		evtObj.stopPropagation();
	}else{
		window.event.cancelBubble = true;
	}
}
// イベントが発生したオブジェクトの情報を取得
function getEventTarget(evt)
{
	if(window.addEventListener)
	{
		return evt.target;
	}else{
		return event.srcElement;
	}
}

// ボタンを無効にする
function voidBtnElementsByName(tagName){

	elems = document.getElementsByName(tagName)
	
	for (i = 0; i < elems.length; i++)
	{
		elems[i].disabled = true;
	}
}
// ボタンを有効にする
function validBtnElementsByName(tagName){

	elems = document.getElementsByName(tagName)
	
	for (i = 0; i < elems.length; i++)
	{
		elems[i].disabled = false;
	}
}
