密码强度校验
2016-09-09 16:11
323 查看
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> <!-- 页面编码集 gbk gb2312 utf-8 --> <meta http-equiv="Content-Type" content="text/html;charset=gbk" /> <title>密码校验</title> <style type="text/css"> body{font:12px Arial;} input{float:left;font-size:12px;width:150px;border:1px solid #ccc;padding:3px;} #tips{float:left;margin:2px 0 0 20px;} #tips span{float:left;width:50px;height:20px;color:#999999;overflow:hidden;background:#ccc;margin-right:2px;line-height:20px;text-align:center;} #tips.s1 .t{background:#FF0000} /*红色*/ #tips.s2 .t{background:#FF9900} /*橙色*/ #tips.s3 .t{background:#FFFF66} /*黄色*/ #tips.s4 .t{background:#009900} /*绿色*/ </style> </head> <body> 密码:<input id="text" type="text" value="" maxlength="16" /> <div id="tips"> <span></span> <span></span> <span></span> <span></span> </div> <script type="text/javascript"> var password = document.getElementById('text'); // 获取文本框的对象 var div = document.getElementById('tips'); // 获取div的对象 var spanDoms = document.getElementsByTagName('span'); // 获取所有span var astr = ["弱","中","强","很强"]; // 键盘事件 password.onkeyup = function(){ var index = checkPassword(this.value); // 获取用户输入的密码,然后判断强度 div.className = "s" + index; for(var i=0;i<spanDoms.length;i++){ spanDoms[i].className = ""; // 清空css样式 spanDoms[i].innerHTML = ""; // 清空掉内容 if(index){ // 0 false 其余代表true spanDoms[index-1].className = "t"; //添加样式 spanDoms[index-1].innerHTML = astr[index-1]; // 级别对应的中文 } } } // 检验密码的强度方法 function checkPassword(value){ // 如果 modes=0 表示初始值 1 第一个级别 2 第二个级别 3 第三级别 4 第四个 var modes = 0; //定义一个标示符 if(value.length<6){ // 如果密码长度小于6,就是初始值 return modes; } // 包含数字 modes自加1 if(/\d/.test(value)){ modes++; } // 包含小写字母 modes 自加 if(/[a-z]/.test(value)){ modes++; } // 包含 大写字母 if(/[A-Z]/.test(value)){ modes++; } // 包含 非数字 字母 if(/\W/.test(value)){ modes++; } switch(modes){ case 1: return 1; break; case 2: return 2; break; case 3: return 3; break; case 4: return 4; break; } } </script> </body> </html>
相关文章推荐
- AS3自写类整理笔记 ClassLoader类第1/2页
- AS3自写类整理笔记 Dot类第1/2页
- DB2新手使用的一些小笔记:新建实例、数据库路径不存在、客户端连接 .
- perl脚本学习指南--读书笔记
- 《C++ primer plus》读书笔记(三)
- 《C++ primer plus》读书笔记(二)
- Javascript基础学习笔记(菜鸟必看篇)
- jquery 笔记 事件
- jqGrid 学习笔记整理――进阶篇(一 )
- VPS 配置优化笔记
- Ajax学习笔记整理
- 一千行的MySQL学习笔记汇总
- 两千行代码的PHP学习笔记汇总
- 用来记笔记的软件 EverNote 2.2.1.386提供下载
- JavaWeb学习笔记分享(必看篇)
- Hibernate的学习笔记(3)
- 主主互备配合keepalived,MYSQL解决方案
- CentOS6.X下Docker安装笔记
- CentOS下Redis高可用安装笔记
- 在Flickr的开发与运维合作(笔记)