js密码强度校验


Posted in Javascript onNovember 10, 2015

现在很多论坛和博客都在用户注册时添加了验证密码强度的功能,在以前的文章中,我们曾经给出过一段检验密码强度的例子,今天再看一个与《js密码强度校验》的代码。

效果:

js密码强度校验

<html>
<head>
<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 /= 2;
 }
 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;
}
</script>

</head>

<body>

<form>
输入密码:<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="20">
 <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>

</body>
</html>

以上就是为大家分享的js密码强度校验的全部代码,希望对大家的学习有所帮助。

Javascript 相关文章推荐
jquery获得keycode的示例代码
Dec 30 Javascript
Jquery ajax 同步阻塞引起的UI线程阻塞问题
Nov 17 Javascript
jQuery调用WebMethod(PageMethod) NET2.0的方法
Apr 15 Javascript
jquery拖动层效果插件用法实例分析(附demo源码)
Apr 28 Javascript
jQuery实现字符串全部替换的方法【推荐】
Mar 09 Javascript
Vue中使用vux的配置详解
May 05 Javascript
单行 JS 实现移动端金钱格式的输入规则
May 22 Javascript
微信小程序模板和模块化用法实例分析
Nov 28 Javascript
对vue中v-if的常见使用方法详解
Sep 28 Javascript
Node.js从字符串生成文件流的实现方法
Aug 18 Javascript
JavaScript 浏览器对象模型BOM原理与常见用法实例分析
Dec 16 Javascript
JavaScript实现PC端横向轮播图
Feb 07 Javascript
详解javascript函数的参数
Nov 10 #Javascript
JavaScript函数的一些注意要点小结及js匿名函数
Nov 10 #Javascript
javascript实现五星评分功能
Nov 10 #Javascript
javascript实现密码验证
Nov 10 #Javascript
JavaScript编程的单例设计模讲解
Nov 10 #Javascript
js数组常见操作及数组与字符串相互转化实例详解
Nov 10 #Javascript
浅谈javascript中replace()方法
Nov 10 #Javascript
You might like
PHP中的表达式简述
2016/05/29 PHP
php+mysql实现简单登录注册修改密码网页
2016/11/30 PHP
PHP多线程模拟实现秒杀抢单
2018/02/07 PHP
php 中phar包的使用教程详解
2018/10/26 PHP
浅析用prototype定义自己的方法
2013/11/14 Javascript
js抽奖实现随机抽奖代码效果
2013/12/02 Javascript
AngularJS实现textarea记录只能输入规定数量的字符并显示
2016/04/26 Javascript
JavaScript实现广告弹窗效果
2016/08/09 Javascript
Javascript实现运算符重载详解
2018/04/07 Javascript
解决循环中setTimeout执行顺序的问题
2018/06/20 Javascript
Bootstrap fileinput 上传新文件移除时触发服务器同步删除的配置
2018/10/08 Javascript
使用rollup打包JS的方法步骤
2018/12/05 Javascript
微信小程序实现富文本图片宽度自适应的方法
2019/01/20 Javascript
JS/CSS实现字符串单词首字母大写功能
2019/09/03 Javascript
原生js实现下拉选项卡
2019/11/27 Javascript
js中火星坐标、百度坐标、WGS84坐标转换实现方法示例
2020/03/02 Javascript
[01:19:54]DOTA2上海特级锦标赛主赛事日 - 2 败者组第二轮#1Alliance VS EHOME
2016/03/03 DOTA
[48:24]完美世界DOTA2联赛PWL S3 Forest vs INK ICE 第一场 12.09
2020/12/12 DOTA
在Linux中通过Python脚本访问mdb数据库的方法
2015/05/06 Python
Python编程给numpy矩阵添加一列方法示例
2017/12/04 Python
Python自定义函数定义,参数,调用代码解析
2017/12/27 Python
python3 打开外部程序及关闭的示例
2018/11/06 Python
值得收藏的10道python 面试题
2019/04/15 Python
python实现统计代码行数的小工具
2019/09/19 Python
详解mac python+selenium+Chrome 简单案例
2019/11/08 Python
python如何基于redis实现ip代理池
2020/01/17 Python
Snapfish爱尔兰:在线照片打印和个性化照片礼品
2018/09/17 全球购物
Tahari ASL官方网站:高级设计师女装
2021/03/15 全球购物
JAVA程序员自荐书
2014/01/30 职场文书
大学生期末自我鉴定
2014/02/01 职场文书
优秀毕业生推荐信范文
2014/03/07 职场文书
建房协议书
2014/04/11 职场文书
产品委托授权书范本
2014/09/16 职场文书
2015年销售部工作总结范文
2015/04/27 职场文书
go语言求任意类型切片的长度操作
2021/04/26 Golang
CSS 实现多彩、智能的阴影效果
2021/05/12 HTML / CSS