js检测用户输入密码强度


Posted in Javascript onOctober 22, 2015

一个用Javascript检测用户输入密码强度的效果代码,以下代码主要是从以下四个方面检测用户输入的密码的强度的,有兴趣的朋友可以自己添加或修改成自己想要的形式!

1. 如果输入的密码位数少于5位,那么就判定为弱。
2. 如果输入的密码只由数字、小写字母、大写字母或其它特殊符号当中的一种组成,则判定为弱。
3. 如果密码由数字、小写字母、大写字母或其它特殊符号当中的两种组成,则判定为中。
4. 如果密码由数字、小写字母、大写字母或其它特殊符号当中的三种以上组成,则判定为强。
先来看看这个实现的效果吧!

js检测用户输入密码强度

下面是具体利用Javascript检测用户输入密码强度的效果代码。
html部分代码:

<input name="password" type="PassWord" onKeyUp="CheckIntensity(this.value)"> 
<table border="0" cellpadding="0" cellspacing="0"> 
 <tr align="center"> 
 <td id="pwd_Weak" class="pwd pwd_c"> </td> 
 <td id="pwd_Medium" class="pwd pwd_c pwd_f">无</td> 
 <td id="pwd_Strong" class="pwd pwd_c pwd_c_r"> </td> 
 </tr> 
</table>

css部分代码:

.pwd{width:40px;height:20px;line-height:14px;padding-top:2px;} 
.pwd_f{color:#BBBBBB;} 
.pwd_c{background-color:#F3F3F3;border-top:1px solid #D0D0D0;border-bottom:1px solid #D0D0D0;border-left:1px solid #D0D0D0;} 
.pwd_Weak_c{background-color:#FF4545;border-top:1px solid #BB2B2B;border-bottom:1px solid #BB2B2B;border-left:1px solid #BB2B2B;} 
.pwd_Medium_c{background-color:#FFD35E;border-top:1px solid #E9AE10;border-bottom:1px solid #E9AE10;border-left:1px solid #E9AE10;} 
.pwd_Strong_c{background-color:#3ABB1C;border-top:1px solid #267A12;border-bottom:1px solid #267A12;border-left:1px solid #267A12;} 
.pwd_c_r{border-right:1px solid #D0D0D0;} 
.pwd_Weak_c_r{border-right:1px solid #BB2B2B;} 
.pwd_Medium_c_r{border-right:1px solid #E9AE10;} 
.pwd_Strong_c_r{border-right:1px solid #267A12;}

使用到的Js函数:

function CheckIntensity(pwd){ 
 var Mcolor,Wcolor,Scolor,Color_Html; 
 var m=0; 
 var Modes=0; 
 for(i=0; i<pwd.length; i++){ 
 var charType=0; 
 var t=pwd.charCodeAt(i); 
 if(t>=48 && t <=57){charType=1;} 
 else if(t>=65 && t <=90){charType=2;} 
 else if(t>=97 && t <=122){charType=4;} 
 else{charType=4;} 
 Modes |= charType; 
 } 
 for(i=0;i<4;i++){ 
 if(Modes & 1){m++;} 
  Modes>>>=1; 
 } 
 if(pwd.length<=4){m=1;} 
 if(pwd.length<=0){m=0;} 
 switch(m){ 
 case 1 : 
  Wcolor="pwd pwd_Weak_c"; 
  Mcolor="pwd pwd_c"; 
  Scolor="pwd pwd_c pwd_c_r"; 
  Color_Html="弱"; 
 break; 
 case 2 : 
  Wcolor="pwd pwd_Medium_c"; 
  Mcolor="pwd pwd_Medium_c"; 
  Scolor="pwd pwd_c pwd_c_r"; 
  Color_Html="中"; 
 break; 
 case 3 : 
  Wcolor="pwd pwd_Strong_c"; 
  Mcolor="pwd pwd_Strong_c"; 
  Scolor="pwd pwd_Strong_c pwd_Strong_c_r"; 
  Color_Html="强"; 
 break; 
 default : 
  Wcolor="pwd pwd_c"; 
  Mcolor="pwd pwd_c pwd_f"; 
  Scolor="pwd pwd_c pwd_c_r"; 
  Color_Html="无"; 
 break; 
 } 
 document.getElementById('pwd_Weak').className=Wcolor; 
 document.getElementById('pwd_Medium').className=Mcolor; 
 document.getElementById('pwd_Strong').className=Scolor; 
 document.getElementById('pwd_Medium').innerHTML=Color_Html; 
}

密码设置的强度对用户信息安全尤为重要,所以大家一定要重视,不仅在开发项目中要时刻注意,还有在平时注册信息的时候也要提高密码的强度,保护个人信息安全,希望这篇文章对大家的学习有所帮助。

Javascript 相关文章推荐
js Date自定义函数 延迟脚本执行
Mar 10 Javascript
JS Pro-深入面向对象的程序设计之继承的详解
May 07 Javascript
快速解决jquery之get缓存问题的最简单方法介绍
Dec 19 Javascript
js语法学习之判断一个对象是否为数组
May 13 Javascript
AngularJS中的过滤器使用详解
Jun 16 Javascript
浅谈JS读取DOM对象(标签)的自定义属性
Nov 21 Javascript
Bootstrap导航中表单简单实现代码
Mar 06 Javascript
BootStrap表单控件之文本域textarea
May 23 Javascript
bootstrap table实现x-editable的行单元格编辑及解决数据Empty和支持多样式问题
Aug 10 Javascript
JS滚轮控制图片缩放大小和拖动的实例代码
Nov 20 Javascript
JavaScript判断浏览器版本的方法
Nov 03 Javascript
vue+elementUI(el-upload)图片压缩,默认同比例压缩操作
Aug 10 Javascript
使用JQuery实现Ctrl+Enter提交表单的方法
Oct 22 #Javascript
实例详解angularjs和ajax的结合使用
Oct 22 #Javascript
jQuery多级手风琴菜单实例讲解
Oct 22 #Javascript
使用jquery插件qrcode生成二维码
Oct 22 #Javascript
JavaScrip调试技巧之断点调试
Oct 22 #Javascript
浅析JavaScript 调试方法和技巧
Oct 22 #Javascript
JS+CSS实现的竖向简洁折叠菜单效果代码
Oct 22 #Javascript
You might like
再次研究下cache_lite
2007/02/14 PHP
php 的加密函数 md5,crypt,base64_encode 等使用介绍
2012/04/09 PHP
php socket实现的聊天室代码分享
2014/08/16 PHP
部署PHP时的4个配置修改说明
2015/10/19 PHP
PHP实现的服务器一致性hash分布算法示例
2018/08/09 PHP
php7下的filesize函数
2019/09/30 PHP
简单的JS多重继承示例
2008/03/13 Javascript
js如何设置在iframe框架中指定div不显示
2013/12/04 Javascript
jQuery Mobile动态刷新页面样式的实现方法
2016/05/28 Javascript
浅谈JavaScript中变量和函数声明的提升
2016/08/09 Javascript
AngularJs 指令详解及示例代码
2016/09/01 Javascript
Nodejs进阶:核心模块net入门学习与实例讲解
2016/11/21 NodeJs
AngularJS报错$apply already in progress的解决方法分析
2017/01/30 Javascript
详解angularjs中的隔离作用域理解以及绑定策略
2017/05/31 Javascript
浅谈mvvm-simple双向绑定简单实现
2018/04/18 Javascript
vue实现未登录跳转到登录页面的方法
2018/07/17 Javascript
node Buffer缓存区常见操作示例
2019/05/04 Javascript
移动端吸顶fixbar的解决方案详解
2019/07/17 Javascript
ES6中异步对象Promise用法详解
2019/07/31 Javascript
JS面向对象编程基础篇(一) 对象和构造函数实例详解
2020/03/03 Javascript
jquery+css3实现的经典弹出层效果示例
2020/05/16 jQuery
JavaScript forEach中return失效问题解决方案
2020/06/01 Javascript
Element Tooltip 文字提示的使用示例
2020/07/26 Javascript
[40:05]LGD vs Winstrike 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/18 DOTA
scrapy自定义pipeline类实现将采集数据保存到mongodb的方法
2015/04/16 Python
Python简单实现查找一个字符串中最长不重复子串的方法
2018/03/26 Python
python中利用zfill方法自动给数字前面补0
2018/04/10 Python
Python使用pymongo模块操作MongoDB的方法示例
2018/07/20 Python
python实现大文本文件分割
2019/07/22 Python
django 实现简单的插入视频
2020/04/07 Python
30行Python代码实现高分辨率图像导航的方法
2020/05/22 Python
python实例化对象的具体方法
2020/06/17 Python
利用Python发送邮件或发带附件的邮件
2020/11/12 Python
印度最大的旅游网站:MakeMyTrip
2016/10/05 全球购物
巴西化妆品商店:Lojas Rede
2019/07/26 全球购物
学习型家庭事迹材料
2014/12/20 职场文书