js检验密码强度(低中高)附图


Posted in Javascript onJune 05, 2014

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

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 相关文章推荐
javascript attachEvent和addEventListener使用方法
Mar 19 Javascript
测试JavaScript字符串处理性能的代码
Dec 07 Javascript
ie支持function.bind()方法实现代码
Dec 27 Javascript
js对table的td进行相同内容合并示例详解
Dec 27 Javascript
简介JavaScript中的push()方法的使用
Jun 09 Javascript
简单讲解jQuery中的子元素过滤选择器
Apr 18 Javascript
webpack4 处理SCSS的方法示例
Sep 03 Javascript
Vue递归组件+Vuex开发树形组件Tree--递归组件的简单实现
Apr 01 Javascript
Vue源码之关于vm.$delete()/Vue.use()内部原理详解
May 01 Javascript
JavaScript find()方法及返回数据实例
Apr 30 Javascript
JavaScript Image对象实现原理实例解析
Aug 26 Javascript
js实现缓动动画
Nov 25 Javascript
原生js编写设为首页兼容ie、火狐和谷歌
Jun 05 #Javascript
js如何判断用户是否是用微信浏览器
Jun 05 #Javascript
如何获取网站icon有哪些可行的方法
Jun 05 #Javascript
IE6中链接A的href为javascript协议时不在当前页面跳转
Jun 05 #Javascript
网页右下角弹出窗体实现代码
Jun 05 #Javascript
获取中文字符串的实际长度代码
Jun 05 #Javascript
jQuery文件上传插件Uploadify使用指南
Jun 05 #Javascript
You might like
php email邮箱正则
2008/10/08 PHP
php读取mysql的简单实例
2014/01/15 PHP
使用配置类定义Codeigniter全局变量
2014/06/12 PHP
Zend Framework框架中实现Ajax的方法示例
2017/06/27 PHP
解决php extension 加载顺序问题
2019/08/16 PHP
JQUERY CHECKBOX全选,取消全选,反选方法三
2008/08/30 Javascript
javascript 必知必会之closure
2009/09/21 Javascript
js 判断checkbox是否选中的操作方法
2012/11/09 Javascript
关于JS管理作用域的问题
2013/04/10 Javascript
javascript四舍五入函数代码分享(保留后几位)
2013/12/10 Javascript
使用jspdf生成pdf报表
2015/07/03 Javascript
关于cookie的初识和运用(js和jq)
2016/04/07 Javascript
使用jquery/js获取iframe父子级、同级获取元素的方法
2016/08/05 Javascript
JS中数组重排序方法
2016/11/11 Javascript
微信小程序 Canvas增强组件实例详解及源码分享
2017/01/04 Javascript
react高阶组件经典应用之权限控制详解
2017/09/07 Javascript
vue引入ueditor及node后台配置详解
2018/01/03 Javascript
clipboard.js在移动端复制失败的解决方法
2018/06/13 Javascript
JS栈stack类的实现与使用方法示例
2019/01/31 Javascript
JS左右无缝轮播功能完整实例
2019/05/16 Javascript
详解小程序中h5页面onShow实现及跨页面通信方案
2019/05/30 Javascript
Ajax获取node服务器数据的完整步骤
2020/09/20 Javascript
浅谈vue使用axios的回调函数中this不指向vue实例,为undefined
2020/09/21 Javascript
Python脚本实时处理log文件的方法
2016/11/21 Python
python 系统调用的实例详解
2017/07/11 Python
django输出html内容的实例
2018/05/27 Python
对python多线程与global变量详解
2018/11/09 Python
python直接获取API传递回来的参数方法
2018/12/17 Python
关于 Python opencv 使用中的 ValueError: too many values to unpack
2019/06/28 Python
在tensorflow中实现去除不足一个batch的数据
2020/01/20 Python
怎样让char类型的东西转换成int类型
2013/12/09 面试题
团日活动总结范文
2014/04/25 职场文书
局机关干部群众路线个人对照检查材料思想汇报
2014/10/05 职场文书
浅谈克隆 JavaScript
2021/11/02 Javascript
V Rising 服务器搭建图文教程
2022/06/16 Servers
vue递归实现树形组件
2022/07/15 Vue.js