输入文字变成这样,这里会区分圆角半角,2个半角的文字算一个。
这个是超出的样子
如果超出了点击提交,会有红色闪动提示
好了,效果就是这样子,都是js的。。用的话,记得加个jq文件过来。。
这里是超出只有提示,还可以超出以后截掉多余的。。不过公司项目不用,说是体验不好~~~
复制代码 代码如下:
var oh2 = $(#spetit_word);//提示文字
var otextarea = $(#p_qa_content);//输入框
var obutton = $(#bt-ico);//按钮
复制代码 代码如下:
otextarea.live(keyup, function () {
limit(otextarea, 280, oh2);
})
obutton.live(click, function () {
if (font_count error(otextarea);
} else {
alert('发布成功!');
}
});
复制代码 代码如下:
var font_count;
function wordlength(obj) {
var oval = obj.val();
var ovallength = 0;
oval.replace(/\n*\s*/, '') == '' ? ovallength = 0 : ovallength = oval.match(/[^ -~]/g) == null ? oval.length : oval.length + oval.match(/[^ -~]/g).length;
return ovallength
}
function error(obj) {
var otimer = null;
var i = 0;
otimer = setinterval(function () {
i++;
i == 5 ? clearinterval(otimer) : (i % 2 == 0 ? obj.css(background-color, #ffffff) : obj.css(background-color, #ffd4d4));
}, 100);
}
//obj-要检查的输入框, inow-多少字, tit-提示框
function limit(obj, inow, tit) {
var ovallength = wordlength(obj);
font_count = math.floor((inow - ovallength) / 2);
if (font_count >= 0) {
tit.html(你还可以输入 + font_count + 字);
return true;
} else {
tit.html(已超出 + math.abs(font_count) + 字);
return false;
}
return font_count;
}