jQuery计算textarea中文字数(剩余个数)的小程序
jQuery计算textarea中文字数(剩余个数)的小程序
发布时间:2016-12-30 来源:查字典编辑
摘要:复制代码代码如下:还可以输入140字vartxtobj={divName:"area",//外层容器的classtextareaName:"...

复制代码 代码如下:

<div>

<p>

还可以输入<b>140</b>字</p>

<textarea></textarea>

</div>

<script type="text/javascript">

var txtobj = {

divName: "area", //外层容器的class

textareaName: "chackTextarea", //textarea的class

numName: "num", //数字的class

num: 140 //数字的最大数目

}

var textareaFn = function () {

//定义变量

var $onthis; //指向当前

var $divname = txtobj.divName; //外层容器的class

var $textareaName = txtobj.textareaName; //textarea的class

var $numName = txtobj.numName; //数字的class

var $num = txtobj.num; //数字的最大数目

function isChinese(str) { //判断是不是中文

var reCh = /[u00-uff]/;

return !reCh.test(str);

}

function numChange() {

var strlen = 0; //初始定义长度为0

var txtval = $.trim($onthis.val());

for (var i = 0; i < txtval.length; i++) {

if (isChinese(txtval.charAt(i)) == true) {

strlen = strlen + 2; //中文为2个字符

} else {

strlen = strlen + 1; //英文一个字符

}

}

strlen = Math.ceil(strlen / 2); //中英文相加除2取整数

if ($num - strlen < 0) {

$par.html("超出 <b>" + Math.abs($num - strlen) + "</b> 字"); //超出的样式

}

else {

$par.html("还可以输入 <b>" + ($num - strlen) + "</b> 字"); //正常时候

}

$b.html($num - strlen);

}

$("." + $textareaName).live("focus", function () {

$b = $(this).parents("." + $divname).find("." + $numName); //获取当前的数字

$par = $b.parent();

$onthis = $(this); //获取当前的textarea

var setNum = setInterval(numChange, 500);

});

}

textareaFn();

</script>

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新Javascript教程学习
热门Javascript教程学习
编程开发子分类