Лимит на textarea+progres bar
По заглавието разбирате долу-горе за какво става въпрос :)

Демо: (напишете нещо в полето :) ) Цъкни

<style type="text/css">

.progress{
width: 3px;
height: 15px;
color: white;
font-size: 12px;
font-family: arial;
overflow: hidden;
background-color: red;
padding-left: 0px;
}

</style>

<script type="text/JavaScript">


function textCounter(field,counter,maxlimit,linecounter) {
// дължина на текста
var fieldWidth = parseInt(field.offsetWidth);
var charcnt = field.value.length;


if (charcnt > maxlimit) {
field.value = field.value.substring(0, maxlimit);
}

else {
//проценти на прогрес бара
var percentage = parseInt(100 - (( maxlimit - charcnt) * 100)/maxlimit) ;
document.getElementById(counter).style.width = parseInt((fieldWidth*percentage)/100)+"px";
document.getElementById(counter).innerHTML="Лимит на полето: "+percentage+"%"

setcolor(document.getElementById(counter),percentage,"background-color");
}
}

function setcolor(obj,percentage,prop){
obj.style[prop] = "rgb(80%,"+(100-percentage)+"%,"+(100-percentage)+"%)";
}

</script>
<form>

<textarea rows="5" cols="90" name="maxcharfield" id="maxcharfield"
onKeyDown="textCounter(this,'progressbar1',50)"
onKeyUp="textCounter(this,'progressbar1',50)"
onFocus="textCounter(this,'progressbar1',50)" ></textarea><br />

<div id="progressbar1" class="progress"></div>

<script>textCounter(document.getElementById("maxcharfield"),"progressbar1",50)</script>

</form>



Тествано и работи под ИЕ , ФФ и Опера !

Източник - http://www.dynamicdrive.com/

/ Трябва да сте регистриран за да напишете коментар /