js水平太菜了,有段js搞不明白,大家瞅瞅啊,解释下。
function countt(str,n){
var num=document.getElementById("num");
var tt=document.getElementById(str);
if (DataLength(tt.value)>n*2){
tt.value=SetString(tt.value,n*2);
}
num.innerHTML=Math.floor(DataLength(tt.value)/2);
if(Math.floor(DataLength(tt.value)/2)>500) //如果元素区字符数大于最大字符数,按照最大字符数截断;
tt.value = tt.value.substring(0, 500);
}function DataLength(fData)
{var intLength=0;
for (var i=0;i<fData.length;i++)
{
if ((fData.charCodeAt(i) < 0) || (fData.charCodeAt(i) > 1000))
intLength=intLength+2;
else
intLength=intLength+1;
}
return intLength;
}
function SetString(str,len){
var strlen = 0;
var s = "";
for(var i = 0;i < str.length;i++){
if(str.charCodeAt(i) > 500){
strlen += 2;
}else{
strlen++;
}
s += str.charAt(i);
if(strlen >= len){
return s ;
}
}
return s;
}
function countt(str,n){
var num=document.getElementById("num");
var tt=document.getElementById(str);
if (DataLength(tt.value)>n*2){
tt.value=SetString(tt.value,n*2);
}
num.innerHTML=Math.floor(DataLength(tt.value)/2);
if(Math.floor(DataLength(tt.value)/2)>500) //如果元素区字符数大于最大字符数,按照最大字符数截断;
tt.value = tt.value.substring(0, 500);
}function DataLength(fData)
{var intLength=0;
for (var i=0;i<fData.length;i++)
{
if ((fData.charCodeAt(i) < 0) || (fData.charCodeAt(i) > 1000))
intLength=intLength+2;
else
intLength=intLength+1;
}
return intLength;
}
function SetString(str,len){
var strlen = 0;
var s = "";
for(var i = 0;i < str.length;i++){
if(str.charCodeAt(i) > 500){
strlen += 2;
}else{
strlen++;
}
s += str.charAt(i);
if(strlen >= len){
return s ;
}
}
return s;
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货