用于判断用户注册时,密码强度的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 相关文章推荐
javascript 常用功能总结
Mar 18 Javascript
js定时调用方法成功后并停止调用示例
Apr 08 Javascript
js+HTML5实现视频截图的方法
Jun 16 Javascript
js实现鼠标点击文本框自动选中内容的方法
Aug 20 Javascript
一个php+js实时显示时间问题
Oct 12 Javascript
JS+CSS实现另类带提示效果的竖向导航菜单
Oct 15 Javascript
JavaScript中的遍历详解(多种遍历)
Apr 07 Javascript
微信小程序自定义tabBar组件开发详解
Sep 24 Javascript
详解vue几种主动刷新的方法总结
Feb 19 Javascript
Angular 中使用 FineReport不显示报表直接打印预览
Aug 21 Javascript
在Vue中使用antv的示例代码
Jun 29 Javascript
JavaScript实现显示和隐藏图片
Apr 29 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文件上传原理简单分析
2011/05/29 PHP
php处理文件的小例子(解压缩,删除目录)
2013/02/03 PHP
PHP递归调用的小技巧讲解
2013/02/19 PHP
在windows平台上构建自己的PHP实现方法(仅适用于php5.2)
2013/07/05 PHP
PHP实现通过get方式识别用户发送邮件的方法
2015/07/16 PHP
Laravel5.1 框架Middleware中间件基本用法实例分析
2020/01/04 PHP
刷新页面实现方式总结(HTML,ASP,JS)
2008/11/13 Javascript
js自动闭合html标签(自动补全html标记)
2012/10/04 Javascript
js数组的操作指南
2014/12/28 Javascript
JavaScript编程中容易出BUG的几点小知识
2015/01/31 Javascript
浅谈JavaScript的全局变量与局部变量
2016/06/10 Javascript
对js eval()函数的一些见解
2016/08/15 Javascript
vue实现ajax滚动下拉加载,同时具有loading效果(推荐)
2017/01/11 Javascript
原JS实现banner图的常用功能
2017/06/12 Javascript
解决vue数组中对象属性变化页面不渲染问题
2018/08/09 Javascript
菊花转动的jquery加载动画效果
2018/08/19 jQuery
CryptoJS中AES实现前后端通用加解密技术
2018/12/18 Javascript
js实现百度淘宝搜索功能
2020/02/17 Javascript
Python3访问并下载网页内容的方法
2015/07/28 Python
Python贪吃蛇游戏编写代码
2020/10/26 Python
Python实现求数列和的方法示例
2018/01/12 Python
Python连接Mssql基础教程之Python库pymssql
2018/09/16 Python
Python机器学习之scikit-learn库中KNN算法的封装与使用方法
2018/12/14 Python
pandas进行时间数据的转换和计算时间差并提取年月日
2019/07/06 Python
python2和python3实现在图片上加汉字的方法
2019/08/22 Python
python识别验证码的思路及解决方案
2020/09/13 Python
Python可视化工具如何实现动态图表
2020/10/23 Python
HTML5 WebSocket实现点对点聊天的示例代码
2018/01/31 HTML / CSS
Myprotein葡萄牙官方网站:英国优质运动营养品牌
2016/09/12 全球购物
美国最大的网上冲印店:Shutterfly
2017/01/01 全球购物
应届生体育教师自荐信
2013/10/03 职场文书
员工保密承诺书
2014/05/28 职场文书
军训通讯稿范文
2015/07/18 职场文书
七一慰问简报
2015/07/20 职场文书
《妈妈别哭,有我在》读后感3篇
2020/01/13 职场文书
Python基础之进程详解
2021/05/21 Python