字数输入限制百分比显示CSS+JS

王朝学院·作者佚名  2009-02-17  
宽屏版  字体: |||超大  

<style type="text/css">

.progress{

width: 1px;

height: 14px;

color: white;

font-size: 12px;

overflow: hidden;

background-color: navy;

padding-left: 5px;

}

</style>

<script type="text/JavaScript">

function textCounter(field,counter,maxlimit,linecounter) {

// text width//

var fieldWidth = parseInt(field.offsetWidth);//parseInt 方法 返回由字符串转换得到的整数。将字符串转换成整型。

//obj.offsetWidth 指 obj 控件自身的绝对宽度,不包括因 overflow 而未显示的部分,也就是其实际占据的宽度,整型,单位像素

var charcnt = field.value.length;

// trim the extra text

if (charcnt > maxlimit) {

field.value = field.value.substring(0, maxlimit);

}

else {

// progress bar percentage

var percentage = parseInt(100 - (( maxlimit - charcnt) * 100)/maxlimit) ;

document.getElementById(counter).style.width = parseInt((fieldWidth*percentage)/100)+"px";

document.getElementById(counter).innerHTML="已输: "+percentage+"%"

// color correction on style from CCFFF -> CC0000

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

}

}

function setcolor(obj,percentage,prop){

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

}

</script>

<p>限制:120字节</P>

<form>

<textarea rows="5" cols="40" name="maxcharfield" id="maxcharfield"

onKeyDown="textCounter(this,'progressbar1',120)"

onKeyUp="textCounter(this,'progressbar1',120)"

onFocus="textCounter(this,'progressbar1',120)" ></textarea><br />

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

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

</form>

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有