JavaScript判断密码强度(自写代码)


Posted in Javascript onSeptember 06, 2013

在一些网站注册的时候经常可以看到密码强度提示,例如优酷:
JavaScript判断密码强度(自写代码) 
今天自己做了一个JS密码强度判断,效果如下:
JavaScript判断密码强度(自写代码) 
以下是代码:

<html> 
<head> 
<title>JS判断密码强度</title> 
<script language=javascript> 
//判断输入密码的类型 
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; 
} 
//返回强度级别 
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); 
} //显示颜色 
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> 
</head> 
<body> 
<form name=form1 action="" > 
<table width="250" border="0" cellpadding=2" bordercolor="#eeeeee" style='display:inline'> 
<tr> 
<td width="40%" align="right">密码:</td> 
<td colspan="3" align="left"> 
<input type=password size=20 onKeyUp=pwStrength(this.value) onBlur=pwStrength(this.value)> 
</td> 
</tr> 
<tr align="center"> 
<td width="40%" align="right">密码强度:</td> 
<td width="20%" id="strength_L" bgcolor="#f5f5f5">弱</td> 
<td width="20%" id="strength_M" bgcolor="#f5f5f5">中</td> 
<td width="20%" id="strength_H" bgcolor="#f5f5f5">强</td> 
</tr> 
</table> 
</form> 
</body> 
</html>
Javascript 相关文章推荐
javascript网页关键字高亮代码
Jul 30 Javascript
Jquery拖拽并简单保存的实现代码
Nov 28 Javascript
Javascript base64编码实现代码
Dec 02 Javascript
JS关键字球状旋转效果的实例代码
Nov 29 Javascript
JS实现支持Ajax验证的表单插件
Mar 24 Javascript
jQuery ajax应用总结
Jun 02 Javascript
jquery判断对象是否为空并遍历对象的简单实例
Jul 26 Javascript
vue axios 给生产环境和发布环境配置不同的接口地址(推荐)
May 08 Javascript
vue实现的微信机器人聊天功能案例【附源码下载】
Feb 18 Javascript
使用layui监听器监听select下拉框,事件绑定不成功的解决方法
Sep 28 Javascript
微信小程序(订阅消息)功能
Oct 25 Javascript
Vue实现tab导航栏并支持左右滑动功能
Jun 28 Vue.js
js实现连续英文字符自动换行兼容ie6 ie7和firefox
Sep 06 #Javascript
让网页跳转到指定位置的jquery代码非书签
Sep 06 #Javascript
jquery中prop()方法和attr()方法的区别浅析
Sep 06 #Javascript
CheckBoxList多选样式jquery、C#获取选择项
Sep 06 #Javascript
jquery阻止冒泡事件使用模拟事件
Sep 06 #Javascript
Jquery的hover方法让鼠标经过li时背景变色
Sep 06 #Javascript
Jquery的hide及toggle方法让超链接慢慢消失
Sep 06 #Javascript
You might like
真正的ZIP文件操作类(php)
2007/07/21 PHP
PHP单例模式与工厂模式详解
2017/08/29 PHP
php查询内存信息操作示例
2019/05/09 PHP
jQuery 操作下拉列表框实现代码
2010/02/22 Javascript
JavaScript下通过的XMLHttpRequest发送请求的代码
2011/06/28 Javascript
JS高级笔记
2011/07/13 Javascript
js获取浏览器的可视区域尺寸的实现代码
2011/11/30 Javascript
判断某个字符在一个字符串中是否存在的js代码
2014/02/28 Javascript
禁止iframe页面的所有js脚本如alert及弹出窗口等
2014/09/03 Javascript
javascript结合Canvas 实现简易的圆形时钟
2015/03/11 Javascript
Javascript定义类(class)的三种方法详解
2015/03/13 Javascript
js给table赋值的实例代码
2016/10/13 Javascript
JS短信验证码倒计时功能的实现(没有验证码,只有倒计时)
2016/10/27 Javascript
ie下js不执行的几种可能
2017/02/28 Javascript
详解如何使用webpack打包Vue工程
2017/05/27 Javascript
React-Native实现ListView组件之上拉刷新实例(iOS和Android通用)
2017/07/11 Javascript
Angular.js中上传指令ng-upload的基本使用教程
2017/07/30 Javascript
VUE饿了么树形控件添加增删改功能的示例代码
2017/10/17 Javascript
详解react关于事件绑定this的四种方式
2018/03/09 Javascript
webpack4打包vue前端多页面项目
2018/09/17 Javascript
vue 解决路由只变化参数页面组件不更新问题
2019/11/05 Javascript
vue项目实现设置根据路由高亮对应的菜单项操作
2020/08/06 Javascript
探索node之事件循环的实现
2020/10/30 Javascript
pycharm 使用心得(七)一些实用功能介绍
2014/06/06 Python
为Python的web框架编写前端模版的教程
2015/04/30 Python
Python多进程并发与多线程并发编程实例总结
2018/02/08 Python
Python logging自定义字段输出及打印颜色
2020/11/30 Python
python 窃取摄像头照片的实现示例
2021/01/08 Python
ECCO爱步美国官网:来自丹麦的鞋履品牌
2016/11/23 全球购物
skyn ICELAND官网:冰岛成分天然护肤品
2020/08/24 全球购物
金蝶的一道SQL笔试题
2012/12/18 面试题
了解AppleTalk协议吗
2014/04/01 面试题
岗位廉洁从业承诺书
2014/03/28 职场文书
班级文化标语
2014/06/23 职场文书
党员民主生活会对照检查材料思想汇报
2014/09/28 职场文书
对Golang中的FORM相关字段理解
2021/05/02 Golang