js实现密码强度检验


Posted in Javascript onJanuary 15, 2017

最近一直在做通行证项目,里面的注册模块中输入密码需要显示密码强度(低中高)。今天就把做的效果给大家分享下,代码没有网上搜索的那么复杂,能够满足一般的需求。

html 代码如下:

<!DOCTYPE HTML>
<html lang="en">
<head>
 <meta charset="utf-8"/>
 <title>密码强度</title>
 <style type="text/css">
 #passStrength{height:6px;width:120px;border:1px solid #ccc;padding:2px;}
 .strengthLv1{background:red;height:6px;width:40px;}
 .strengthLv2{background:orange;height:6px;width:80px;}
 .strengthLv3{background:green;height:6px;width:120px;}
 </style>
</head>
<body>
 <input type="password" name="pass" id="pass" maxlength="16"/>
 <div class="pass-wrap">
 <em>密码强度:</em>
 <div id="passStrength"></div>
 </div>
</body>
</html>
<script type="text/javascript" src="js/passwordStrength.js"></script>
<script type="text/javascript">
new PasswordStrength('pass','passStrength');
</script>

js 代码如下:

function PasswordStrength(passwordID,strengthID){
 this.init(strengthID);
 var _this = this;
 document.getElementById(passwordID).onkeyup = function(){
 _this.checkStrength(this.value);
 }
};
PasswordStrength.prototype.init = function(strengthID){
 var id = document.getElementById(strengthID);
 var div = document.createElement('div');
 var strong = document.createElement('strong');
 this.oStrength = id.appendChild(div);
 this.oStrengthTxt = id.parentNode.appendChild(strong);
};
PasswordStrength.prototype.checkStrength = function (val){
 var aLvTxt = ['','低','中','高'];
 var lv = 0;
 if(val.match(/[a-z]/g)){lv++;}
 if(val.match(/[0-9]/g)){lv++;}
 if(val.match(/(.[^a-z0-9])/g)){lv++;}
 if(val.length < 6){lv=0;}
 if(lv > 3){lv=3;}
 this.oStrength.className = 'strengthLv' + lv;
 this.oStrengthTxt.innerHTML = aLvTxt[lv];
};

效果图:

js实现密码强度检验

使用说明:

1、对象的第一个参数是密码输入框的 id,第二个参数是密码强度长条的 id。

2、checkStrength 方法中可以自定义密码强度的规则。

3、密码强度显示低中高分别对应 3 个 css 样式(strengthLv1、strengthLv2、strengthLv3)。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
给网站上的广告“加速”显示的方法
Apr 08 Javascript
js 判断checkbox是否选中的操作方法
Nov 09 Javascript
让低版本浏览器支持input的placeholder属性(js方法)
Apr 03 Javascript
textarea 控制输入字符字节数(示例代码)
Dec 27 Javascript
JS获取URL中参数值(QueryString)的4种方法分享
Apr 12 Javascript
jfreechart插件将数据展示成饼状图、柱状图和折线图
Apr 13 Javascript
JavaScript实现99乘法表及隔行变色实例代码
Feb 24 Javascript
Js得到radiobuttonlist选中值的两种方法(推荐)
Aug 25 Javascript
javascript简单进制转换实现方法
Nov 24 Javascript
详解闭包解决jQuery中AJAX的外部变量问题
Feb 22 Javascript
vue2.0s中eventBus实现兄弟组件通信的示例代码
Oct 25 Javascript
node.js中 redis 的安装和基本操作示例
Feb 10 Javascript
JavaScript实现图像模糊化的方法实例
Jan 15 #Javascript
vue实现简单实时汇率计算功能
Jan 15 #Javascript
bootstrap——bootstrapTable实现隐藏列的示例
Jan 14 #Javascript
JS轮播图中缓动函数的封装
Nov 25 #Javascript
JavaScript字符串对象
Jan 14 #Javascript
jquery mobile移动端幻灯片滑动切换效果
Apr 15 #Javascript
Easyui笔记2:实现datagrid多行删除的示例代码
Jan 14 #Javascript
You might like
PHP中的cookie不用刷新就生效的方法
2012/02/04 PHP
php自定义函数实现汉字转换utf8编码的方法
2016/09/29 PHP
PHP5.0 TIDY_PARSE_FILE缓冲区溢出漏洞的解决方案
2018/10/14 PHP
PHP连接MySQL数据库的三种方式实例分析【mysql、mysqli、pdo】
2019/11/04 PHP
javascript入门·对象属性方法大总结
2007/10/01 Javascript
火狐浏览器(firefox)下获得Event对象以及keyCode
2008/11/13 Javascript
JavaScript 设计模式之组合模式解析
2010/04/09 Javascript
JavaScript浏览器选项卡效果
2010/08/25 Javascript
jquery 日期控件datepicker属性详细解析
2013/11/08 Javascript
一个简单的实现下拉框多选的插件可移植性比较好
2014/05/05 Javascript
jQuery实现的鼠标滑过弹出放大图片特效
2016/01/08 Javascript
JavaScript比较当前时间是否在指定时间段内的方法
2016/08/02 Javascript
全面解析Angular中$Apply()及$Digest()的区别
2016/08/04 Javascript
AngularJS实现根据不同条件显示不同控件
2017/04/20 Javascript
nodejs入门教程六:express模块用法示例
2017/04/24 NodeJs
JavaScript实现求最大公共子串的方法
2018/02/03 Javascript
详解vue 计算属性与方法跟侦听器区别(面试考点)
2018/04/23 Javascript
解决循环中setTimeout执行顺序的问题
2018/06/20 Javascript
详解如何制作并发布一个vue的组件的npm包
2018/11/10 Javascript
Puppeteer 爬取动态生成的网页实战
2018/11/14 Javascript
详解vue为什么要求组件模板只能有一个根元素
2019/07/22 Javascript
Python爬虫基础之XPath语法与lxml库的用法详解
2018/09/13 Python
对Python通过pypyodbc访问Access数据库的方法详解
2018/10/27 Python
Python实现遗传算法(二进制编码)求函数最优值方式
2020/02/11 Python
Python 下载Bing壁纸的示例
2020/09/29 Python
利用CSS3实现进度条的两种姿势详解
2017/03/21 HTML / CSS
西班牙灯具网上商店:Lampara.es
2018/06/05 全球购物
美国转售二手商品的电子商务平台:BLINQ
2018/12/13 全球购物
英国在线玫瑰专家:InterRose
2019/12/01 全球购物
进程的查看和调度分别使用什么命令
2013/12/14 面试题
编辑求职信样本
2013/12/16 职场文书
法学专业自我鉴定
2014/02/05 职场文书
学术诚信承诺书
2014/05/26 职场文书
收款授权委托书
2014/10/02 职场文书
党的群众路线教育实践活动整改落实情况报告
2014/10/28 职场文书
前台接待员岗位职责
2015/04/15 职场文书