javascripit实现密码强度检测代码分享


Posted in Javascript onDecember 12, 2013
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
    <title>
        密码强度检测
    </title>
    <style type="text/css">
        body{font:12px/1.5 Arial;} input{float:left;font-size:12px;width:150px;font-family:arial;border:1px
        solid #ccc;padding:3px;} input.correct{border:1px solid green;} input.error{border:1px
        solid red;} #tips{float:left;margin:2px 0 0 20px;} #tips span{float:left;width:50px;height:20px;color:#fff;overflow:hidden;background:#ccc;margin-right:2px;line-height:20px;text-align:center;}
        #tips.s1 .active{background:#f30;} #tips.s2 .active{background:#fc0;} #tips.s3
        .active{background:#cc0;} #tips.s4 .active{background:#090;}
    </style>
    <script type="text/javascript">
        window.onload = function() {
            var oTips = document.getElementById("tips");
            var oInput = document.getElementsByTagName("input")[0];
            var aSpan = oTips.getElementsByTagName("span");
            var aStr = ["弱", "中", "强", "非常好"];
            var i = 0;
            oInput.onkeyup = oInput.onfocus = oInput.onblur = function() {
                var index = checkStrong(this.value);
                this.className = index ? "correct": "error";
                oTips.className = "s" + index;
                for (i = 0; i < aSpan.length; i++) aSpan[i].className = aSpan[i].innerHTML = "";
                index && (aSpan[index - 1].className = "active", aSpan[index - 1].innerHTML = aStr[index - 1])
            }
        };
        /** 强度规则
            + ------------------------------------------------------- +
            1) 任何少于6个字符的组合,弱;任何字符数的同类字符组合,弱;
            2) 任何字符数的两类字符组合,中;
            3) 12位字符数以下的三类或四类字符组合,强;
            4) 12位字符数以上的三类或四类字符组合,非常好。
            + ------------------------------------------------------- +
            **/
        //检测密码强度
        function checkStrong(sValue) {
            var modes = 0;
            if (sValue.length < 6) return modes;
            if (/\d/.test(sValue)) modes++; //数字
            if (/[a-z]/.test(sValue)) modes++; //小写
            if (/[A-Z]/.test(sValue)) modes++; //大写  
            if (/\W/.test(sValue)) modes++; //特殊字符
            switch (modes) {
            case 1:
                return 1;
                break;
            case 2:
                return 2;
            case 3:
            case 4:
                return sValue.length < 12 ? 3 : 4
                break;
            }
        }
    </script>
</head>
<body>
    <input type="password" value="" maxlength="16" />
    <div id="tips">
        <span></span>
        <span></span>
        <span></span>
        <span></span>
    </div>
</body>
</html>
Javascript 相关文章推荐
JS实现标签页效果(配合css)
Apr 03 Javascript
浅谈JavaScript中的String对象常用方法
Feb 25 Javascript
JS+CSS实现自动改变切换方向图片幻灯切换效果的方法
Mar 02 Javascript
Javascript实现字数统计
Jul 03 Javascript
jquery实现鼠标滑过小图查看大图的方法
Jul 20 Javascript
Jquery1.9.1源码分析系列(六)延时对象应用之jQuery.ready
Nov 24 Javascript
javascript实现下雨效果
Mar 27 Javascript
详解微信小程序 通过控制CSS实现view隐藏与显示
May 24 Javascript
JS 60秒后重新发送验证码的实例讲解
Jul 26 Javascript
Vue组件库发布到npm详解
Feb 17 Javascript
Spring boot 和Vue开发中CORS跨域问题解决
Sep 05 Javascript
Vue基于iview table展示图片实现点击放大
Aug 05 Javascript
jQuery获取Radio,CheckBox选择的Value值(示例代码)
Dec 12 #Javascript
Jquery 改变radio/checkbox选中状态,获取选中的值(示例代码)
Dec 12 #Javascript
JavaScript判断访问的来源是手机还是电脑,用的哪种浏览器
Dec 12 #Javascript
js中typeof的用法汇总
Dec 12 #Javascript
使用js判断数组中是否包含某一元素(类似于php中的in_array())
Dec 12 #Javascript
解析页面加载与js函数的执行 onload or ready
Dec 12 #Javascript
js实现弹窗插件功能实例代码分享
Dec 12 #Javascript
You might like
PHP swfupload图片上传的实例代码
2013/09/30 PHP
PHP与Java对比学习日期时间函数
2016/07/03 PHP
php实现登陆模块功能示例
2016/10/20 PHP
Laravel中七个非常有用但很少人知道的Carbon方法
2017/09/21 PHP
yii2中关于加密解密的那些事儿
2018/06/12 PHP
js利用与或运算符优先级实现if else条件判断表达式
2010/04/15 Javascript
jquery $.each() 使用小探
2013/08/23 Javascript
在父页面调用子页面的JS方法
2013/09/29 Javascript
js实现简单登录功能的实例代码
2013/11/09 Javascript
js关于命名空间的函数实例
2015/02/05 Javascript
整理Javascript函数学习笔记
2015/12/01 Javascript
利用Angularjs中模块ui-route管理状态的方法
2016/12/27 Javascript
JS常见算法详解
2017/02/28 Javascript
解析Vue2 dist 目录下各个文件的区别
2017/11/22 Javascript
使用Electron构建React+Webpack桌面应用的方法
2017/12/15 Javascript
浅析微信扫码登录原理(小结)
2018/10/29 Javascript
详解JS函数防抖
2020/06/05 Javascript
使用element-ui +Vue 解决 table 里包含表单验证的问题
2020/07/17 Javascript
浅谈Django REST Framework限速
2017/12/12 Python
Python 音频生成器的实现示例
2019/12/24 Python
python连接mongodb数据库操作数据示例
2020/11/30 Python
css3通过scale()、rotate()实现放大、旋转
2020/03/19 HTML / CSS
魅力惠奢品线上平台:MEI.COM
2016/11/29 全球购物
UGG美国官网:购买UGG雪地靴、拖鞋和鞋子
2017/12/31 全球购物
Linux不知道文件后缀名怎么判断文件类型
2012/04/26 面试题
新闻专业个人自我评价
2013/09/21 职场文书
经典洗发水广告词
2014/03/13 职场文书
单位委托书范本(3篇)
2014/09/18 职场文书
幼儿园见习报告范文
2014/10/30 职场文书
租车协议书范本2014
2014/11/17 职场文书
服务承诺书
2015/01/19 职场文书
行政人事主管岗位职责
2015/04/11 职场文书
教师理论学习心得体会
2016/01/21 职场文书
适合青年人白手起家的创业项目分享
2019/08/16 职场文书
十大最强奥特曼武器:怪兽战斗仪在榜,第五奥特之父只使用过一次
2022/03/18 日漫
高并发下Redis如何保持数据一致性(避免读后写)
2022/03/18 Redis