用于判断用户注册时,密码强度的JS代码


Posted in Javascript onJanuary 01, 2009

<script language=javascript>
//CharMode函数
//测试某个字符是属于哪一类.
function CharMode(iN){
if (iN>=48 && iN <=57) //数字
return 1;
if (iN>=65 && iN <=90) //大写字母
return 2;
if (iN>=97 && iN <=122) //小写
return 4;
else
return 8; //特殊字符
}
//bitTotal函数
//计算出当前密码当中一共有多少种模式
function bitTotal(num){
modes=0;
for (i=0;i<4;i++){
if (num & 1) modes++;
num>>>=1;
}
return modes;
}
//checkStrong函数
//返回密码的强度级别
function checkStrong(sPW){
if (sPW.length<=4)
return 0; //密码太短
Modes=0;
for (i=0;i<sPW.length;i++){
//测试每一个字符的类别并统计一共有多少种模式.
Modes|=CharMode(sPW.charCodeAt(i));
}
return bitTotal(Modes);
}
//pwStrength函数
//当用户放开键盘或密码输入框失去焦点时,根据不同的级别显示不同的颜色
function pwStrength(pwd){
O_color="#eeeeee";
L_color="#FF0000";
M_color="#FF9900";
H_color="#33CC00";
if (pwd==null||pwd==''){
Lcolor=Mcolor=Hcolor=O_color;
}
else{
S_level=checkStrong(pwd);
switch(S_level) {
case 0:
Lcolor=Mcolor=Hcolor=O_color;
case 1:
Lcolor=L_color;
Mcolor=Hcolor=O_color;
break;
case 2:
Lcolor=Mcolor=M_color;
Hcolor=O_color;
break;
default:
Lcolor=Mcolor=Hcolor=H_color;
}
}
document.getElementById("strength_L").style.background=Lcolor;
document.getElementById("strength_M").style.background=Mcolor;
document.getElementById("strength_H").style.background=Hcolor;
return;
}
</script>
<form name=form1 action="" >
输入密码:
<input type=password size=10 onKeyUp=pwStrength(this.value)
onBlur=pwStrength(this.value)>
<br>密码强度:
<table width="217" border="1" cellspacing="0" cellpadding="1" bordercolor="#cccccc"
height="23" style='display:inline'>
<tr align="center" bgcolor="#eeeeee">
<td width="33%" id="strength_L">弱</td>
<td width="33%" id="strength_M">中</td>
<td width="33%" id="strength_H">强</td>
</tr>
</table>
</form>

Javascript 相关文章推荐
JS短路原理的应用示例 精简代码的途径
Dec 13 Javascript
jquery制作居中遮罩层效果分享
Feb 21 Javascript
jQuery 中的 DOM 操作
Apr 26 Javascript
一个用jquery写的判断div滚动条到底部的方法【推荐】
Apr 29 Javascript
jquery之别踩白块游戏的简单实现
Jul 25 Javascript
vue.js绑定class和style样式(6)
Dec 09 Javascript
十大热门的JavaScript框架和库
Mar 21 Javascript
jquery中$.fn和图片滚动效果实现的必备知识总结
Apr 21 jQuery
JS+HTML实现的圆形可点击区域示例【3种方法】
Aug 01 Javascript
JavaScript函数式编程(Functional Programming)声明式与命令式实例分析
May 21 Javascript
详细分析vue表单数据的绑定
Jul 20 Javascript
Openlayers绘制聚合标注
Sep 28 Javascript
很全的显示阴历(农历)日期的js代码
Jan 01 #Javascript
js继承 Base类的源码解析
Dec 30 #Javascript
动态创建的表格单元格中的事件实现代码
Dec 30 #Javascript
javascript FormatNumber函数实现方法
Dec 30 #Javascript
js 图片轮播(5张图片)
Dec 30 #Javascript
走出JavaScript初学困境—js初学
Dec 29 #Javascript
ExtJS 简介 让你知道extjs是什么
Dec 29 #Javascript
You might like
PHP 开发环境配置(Zend Studio)
2010/04/28 PHP
PHP+javascript制作带提示的验证码源码分享
2014/05/28 PHP
laravel 4安装及入门图文教程
2014/10/29 PHP
php生成唯一的订单函数分享
2015/02/02 PHP
php HTML无刷新提交表单
2016/04/05 PHP
JavaScript弹簧振子超简洁版 完全符合能量守恒,胡克定理
2009/10/25 Javascript
基于OO的动画附加插件,可以实现弹跳、渐隐等动画效果 分享
2013/06/24 Javascript
js 去除字符串第一位逗号的方法
2014/06/07 Javascript
JavaScript实现按Ctrl键打开新页面
2014/09/04 Javascript
jquery移除了live()、die(),新版事件绑定on()、off()的方法
2016/10/26 Javascript
Vue中的作用域CSS和CSS模块的区别
2018/10/09 Javascript
JS事件绑定的常用方式实例总结
2019/03/02 Javascript
Vue的H5页面唤起支付宝支付功能
2019/04/18 Javascript
vue如何获取自定义元素属性参数值的方法
2019/05/14 Javascript
微信小程序云开发之使用云函数
2019/05/17 Javascript
使用Promise封装小程序wx.request的实现方法
2019/11/13 Javascript
[40:48]DOTA2上海特级锦标赛D组败者赛 Liquid VS COL第二局
2016/02/28 DOTA
Python+selenium实现截图图片并保存截取的图片
2018/01/05 Python
python list是否包含另一个list所有元素的实例
2018/05/04 Python
python3.6使用pymysql连接Mysql数据库
2018/05/25 Python
Python 3.8中实现functools.cached_property功能
2019/05/29 Python
Python使用itchat 功能分析微信好友性别和位置
2019/08/05 Python
解决Keras TensorFlow 混编中 trainable=False设置无效问题
2020/06/28 Python
python自动从arxiv下载paper的示例代码
2020/12/05 Python
python 调用Google翻译接口的方法
2020/12/09 Python
CSS3实现复选框动画特效示例代码
2016/09/27 HTML / CSS
高街生活方式全球在线商店:AZBRO
2017/08/26 全球购物
英国电信商店:BT Shop
2019/12/17 全球购物
幼儿师范毕业生自荐信
2013/11/09 职场文书
《那片绿绿的爬山虎》教学反思
2014/02/27 职场文书
物业消防安全责任书
2014/07/23 职场文书
廉政文化进校园广播稿
2014/10/20 职场文书
英文导游词
2015/02/13 职场文书
2015社区爱国卫生工作总结
2015/04/21 职场文书
素质教育学习心得体会
2016/01/19 职场文书
演讲稿之感恩老师(三篇范文)
2019/09/06 职场文书