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 隐藏/显示指定的区域附HTML元素【legend】用法
Mar 05 Javascript
JavaScript 面向对象编程(2) 定义类
May 18 Javascript
JavaScript 实现类的多种方法实例
May 01 Javascript
javascript删除option选项的多种方法总结
Nov 22 Javascript
超详细的javascript数组方法汇总
Nov 21 Javascript
vue-resouce设置请求头的三种方法
Sep 12 Javascript
JavaScript面向对象精要(下部)
Sep 12 Javascript
React学习笔记之高阶组件应用
Jun 02 Javascript
vue+iview+less 实现换肤功能
Aug 17 Javascript
vue中当图片地址无效的时候,显示默认图片的方法
Sep 18 Javascript
小程序getLocation需要在app.json中声明permission字段
Apr 04 Javascript
vue 全局封装loading加载教程(全局监听)
Nov 05 Javascript
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
PHP中上传大体积文件时需要的设置
2006/10/09 PHP
常用PHP框架功能对照表
2014/10/23 PHP
ThinkPHP V2.2说明文档没有说明的那些事实例小结
2015/07/01 PHP
php解决约瑟夫环算法实例分析
2019/09/30 PHP
js的with语句使用方法
2007/09/21 Javascript
Javascript实现关联数据(Linked Data)查询及注意细节
2013/02/22 Javascript
JQuery中操作Css样式的方法
2014/02/12 Javascript
Jquery获得控件值的三种方法总结
2014/02/13 Javascript
JS、CSS以及img对DOMContentLoaded事件的影响
2014/08/12 Javascript
jQuery解析与处理服务器端返回xml格式数据的方法详解
2016/07/04 Javascript
Windows环境下npm install 报错: operation not permitted, rename的解决方法
2016/09/26 Javascript
浅谈js中function的参数默认值
2017/02/20 Javascript
jQuery使用unlock.js插件实现滑动解锁
2017/04/04 jQuery
JavaScript初学者必看“new”
2017/06/12 Javascript
解决vue-cli3 使用子目录部署问题
2018/07/19 Javascript
原生JS实现图片懒加载之页面性能优化
2019/04/26 Javascript
JS实现求字符串中出现最多次数的字符和次数示例
2019/07/05 Javascript
Vue中util的工具函数实例详解
2019/07/08 Javascript
js+html实现点名系统功能
2019/11/05 Javascript
jQuery使用jsonp实现百度搜索的示例代码
2020/07/08 jQuery
Python实现的Excel文件读写类
2015/07/30 Python
学习python之编写简单乘法口诀表实现代码
2016/02/27 Python
Python实现的异步代理爬虫及代理池
2017/03/17 Python
python os.fork() 循环输出方法
2019/08/08 Python
python读取yaml文件后修改写入本地实例
2020/04/27 Python
基于Python把网站域名解析成ip地址
2020/05/25 Python
Python 里最强的地图绘制神器
2021/03/01 Python
Marc Jacobs彩妆官网:Marc Jacobs Beauty
2017/07/03 全球购物
美国在线旅行社:Crystal Travel
2018/09/11 全球购物
大学生求职中的自我评价
2013/10/01 职场文书
公路绿化方案
2014/05/12 职场文书
作风转变年心得体会
2014/10/22 职场文书
暂住证明怎么写
2015/06/19 职场文书
Nginx如何配置Http、Https、WS、WSS的方法步骤
2021/05/11 Servers
详解thinkphp的Auth类认证
2021/05/28 PHP
使用vue判断当前环境是安卓还是IOS
2022/04/12 Vue.js