	function U_isIExplorer() {
	    return (navigator.appName != "Netscape");
	}
	
	function U_cancelEvent(ev) {
	    if (U_isIExplorer()) {
	        ev.returnValue = false;
	    } else {
	        ev.preventDefault();
	    }
		
	}
	
	/**
	max down
	**/
	function ta_md(obj, max, ev){
		var totalCar = obj.value.length;
		var key = ev.keyCode;
	
		//se for backspace, delete ou setas nao cancela evento
		if(key == 8 || (key >= 45 && key <= 46) || (key >= 33 && key <= 40)){
			return	
		}
		
		if(totalCar >= max){
			U_cancelEvent(ev)
		}
	
	}
	
	/**
	max up
	**/
	function ta_mu(obj, max){
		var totalCar = obj.value.length;
		if(totalCar > max){
			obj.value = obj.value.substring(0, max);
		}
		var spanDetail = obj.nextSibling
		while(spanDetail.nodeName.toUpperCase() != "SPAN"){
			spanDetail = spanDetail.nextSibling
		}
		
		spanDetail.childNodes[0].nodeValue = "Número máximo de caracteres 300, digitados " + totalCar
	}
	

