function addEvent(element,evt,action){
	if(typeof element.addEventListener != "undefined"){
		element.addEventListener(evt,action,false);
	}else if(typeof element.attachEvent != "undefined"){
		element.attachEvent("on"+evt,action);	
	}
}

function removeEvent(element,evt,action){
	if(typeof element.removeEventListener != "undefined"){
		element.removeEventListener(evt,action,false);
	}else if(typeof element.detachEvent != "undefined"){
		element.detachEvent("on"+evt,action);	
	}
}

function preventDef(event){
	if(typeof event == "undefined"){
		event = window.event;
	}
	
	if(typeof event.preventDefault != "undefined"){
		event.preventDefault();
	}else{
		event.returnValue = false;	
	}
}

function getTarget(eventet){
	if(typeof eventet.target != "undefined"){
		return eventet.target;
	}else if(typeof eventet.srcElement != "undefined"){
		return eventet.srcElement;
	}
}

function addClass(element,classen){
	var reg = new RegExp("(^| )"+classen+"( |$)");
	if(!reg.test(element.className)){
		if(element.className.length == 0){
			element.className = classen;
		}else{
			element.className += " "+classen;
		}
	}
}

function removeClass(element,classen){
	if(element){
		var reg = new RegExp(classen);
		if(reg.test(element.className)){
			element.className = element.className.replace(reg,"");	
		}
	}
}

function getElementsByClassName(classen,element){
	if(element){element=element;}else{element=document;}
	var alleTags =  element.getElementsByTagName("*");
	var reg = new RegExp("(^| )"+classen+"( |$)");
	var valgte = new Array();
	for(var i = 0; i < alleTags.length; i++){
		if(reg.test(alleTags[i].className)){
			valgte[valgte.length] = alleTags[i];
		}
	}
	return valgte;
}

function getElementsByAttribute(attribute,attriValue,element){
	if(element){element=element;}else{element=document;}
	var alleTags =  element.getElementsByTagName("*");
	var valgte = new Array();
	for(var i = 0; i < alleTags.length; i++){
		if(alleTags[i].getAttribute(attribute) == attriValue){
			valgte[valgte.length] = alleTags[i];
		}
	}
	return valgte;
}

function getTag(element,tag){
	if(element.nodeName == tag){
		return element;	
	}else{
		var parent = element.parentNode;
		while(parent.nodeName != tag && parent.nodeName != "html"){
			parent = parent.parentNode;	
		}
		return parent;
	}
}

function getIEVersionNumber() {
    var ua = navigator.userAgent;
    var MSIEOffset = ua.indexOf("MSIE ");
    
    if (MSIEOffset == -1) {
        return 0;
    } else {
        return parseFloat(ua.substring(MSIEOffset + 5, ua.indexOf(";", MSIEOffset)));
    }
}
var not7 = getIEVersionNumber() == 8 || getIEVersionNumber() == 0;