仿微博字符限制效果实现代码


Posted in Javascript onApril 20, 2012

这是初始状态

仿微博字符限制效果实现代码

 

输入文字变成这样,这里会区分圆角半角,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 < 0 || font_count == null || font_count == 140) { 
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("你还可以输入<strong>" + font_count + "</strong>字"); 
return true; 
} else { 
tit.html("已超出<strong style='color:red'>" + Math.abs(font_count) + "</strong>字"); 
return false; 
} 
return font_count; 
}
Javascript 相关文章推荐
JQuery在循环中绑定事件的问题详解
Jun 02 Javascript
js实现获取两个日期之间所有日期的方法
Jun 17 Javascript
jQuery模仿单选按钮选中效果
Jun 24 Javascript
jQuery插件echarts设置折线图中折线线条颜色和折线点颜色的方法
Mar 03 Javascript
H5图片压缩与上传实例
Apr 21 Javascript
JavaScript实现AOP详解(面向切面编程,装饰者模式)
Dec 19 Javascript
使用vue官方提供的模板vue-cli搭建一个helloWorld案例分析
Jan 16 Javascript
Vue自定义指令封装节流函数的方法示例
Jul 09 Javascript
kafka调试中遇到Connection to node -1 could not be established. Broker may not be available.
Sep 17 Javascript
windows实现npm和cnpm安装步骤
Oct 24 Javascript
JS字符串补全方法padStart()和padEnd()
May 27 Javascript
Vue的v-model的几种修饰符.lazy,.number和.trim的用法说明
Aug 05 Javascript
javascript 另一种图片滚动切换效果思路
Apr 20 #Javascript
分享一个自定义的console类 让你不再纠结JS中的调试代码的兼容
Apr 20 #Javascript
浏览器解析js生成的html出现样式问题的解决方法
Apr 16 #Javascript
基于jquery的不规则矩形的排列实现代码
Apr 16 #Javascript
JavaScript打开word文档的实现代码(c#)
Apr 16 #Javascript
jQuery UI Autocomplete 1.8.16 中文输入修正代码
Apr 16 #Javascript
Moment.js 不容错过的超棒Javascript日期处理类库
Apr 15 #Javascript
You might like
如何获得PHP相关资料
2006/10/09 PHP
php自动加载的两种实现方法
2010/06/21 PHP
解析dedecms空间迁移步骤详解
2013/05/15 PHP
PHP计算数组中值的和与乘积的方法(array_sum与array_product函数)
2016/04/01 PHP
thinkPHP的表达式查询用法详解
2016/09/14 PHP
thinkphp隐藏index.php/home并允许访问其他模块的实现方法
2016/10/13 PHP
PHP实现长轮询消息实时推送功能代码实例讲解
2021/02/26 PHP
Javascript 读书笔记索引贴
2010/01/11 Javascript
jQuery初学:find()方法及children方法的区别分析
2011/01/31 Javascript
读jQuery之三(构建选择器)
2011/06/11 Javascript
jBox 2.3基于jquery的最新多功能对话框插件 常见使用问题解答
2011/11/10 Javascript
JavaScript中的call方法和apply方法使用对比
2015/08/12 Javascript
基于CSS3和jQuery实现跟随鼠标方位的Hover特效
2016/07/25 Javascript
在微信、支付宝、百度钱包实现点击返回按钮关闭当前页面和窗口的方法
2016/08/05 Javascript
js实现可旋转的立方体模型
2016/10/16 Javascript
超全面的vue.js使用总结
2017/02/12 Javascript
JS匹配日期和时间的正则表达式示例
2017/05/12 Javascript
vue-cli 自定义指令directive 添加验证滑块示例
2017/10/19 Javascript
详解vue-admin和后端(flask)分离结合的例子
2018/02/12 Javascript
使用Angular CLI快速创建Angular项目的一些基本概念和写法小结
2018/04/22 Javascript
python删除本地夹里重复文件的方法
2020/11/19 Python
python使用rpc框架gRPC的方法
2018/08/24 Python
如何用Python制作微信好友个性签名词云图
2019/06/28 Python
python如何获得list或numpy数组中最大元素对应的索引
2020/11/16 Python
Pyqt助手安装PyQt5帮助文档过程图解
2020/11/20 Python
eDreams葡萄牙:全球最大的在线旅行社之一
2019/04/15 全球购物
美国最大的购物网站:Amazon.com(亚马逊美国)
2020/05/23 全球购物
个性大学生自我评价
2013/12/04 职场文书
商务英语应届生自我鉴定
2013/12/08 职场文书
大学新生欢迎词
2014/01/10 职场文书
趣味运动会活动方案
2014/02/12 职场文书
团队会宣传标语
2014/10/09 职场文书
党风廉政建设个人总结
2015/03/06 职场文书
爱国主题班会教案
2015/08/14 职场文书
《落花生》教学反思
2016/02/16 职场文书
MySQL新手入门进阶语句汇总
2022/09/23 MySQL