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 相关文章推荐
html读出文本文件内容
Jan 22 Javascript
用roll.js实现的图片自动滚动+鼠标触动的特效
Mar 18 Javascript
Jquery中获取iframe的代码
Jan 11 Javascript
document.createElement()用法及注意事项(ff下不兼容)
Mar 13 Javascript
使用jQuery时Form表单元素ID和name命名大忌
Mar 06 Javascript
使用BootStrap和Metroui设计的metro风格微网站或手机app界面
Oct 21 Javascript
基于Layer+jQuery的自定义弹框
May 26 Javascript
Webpack实现按需打包Lodash的几种方法详解
May 08 Javascript
Easyui在treegrid添加控件的实现方法
Jun 23 Javascript
浅谈angular.copy() 深拷贝
Sep 14 Javascript
Vue 组件参数校验与非props特性的方法
Feb 12 Javascript
React学习之受控组件与数据共享实例分析
Jan 06 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获取文件大小的方法
2014/02/26 PHP
PHP实现的迷你漂流瓶
2015/07/29 PHP
CodeIgniter分页类pagination使用方法示例
2016/03/28 PHP
学习PHP的数组总结【经验】
2016/05/05 PHP
由JavaScript技术实现的web小游戏(不含网游)
2010/06/12 Javascript
jQuery判断密码强度实现思路及代码
2013/04/24 Javascript
Javascript无阻塞加载具体方式
2013/06/28 Javascript
GRID拖拽行的实例代码
2013/07/18 Javascript
jquery eval解析JSON中的注意点介绍
2013/08/23 Javascript
nodejs获取本机内网和外网ip地址的实现代码
2014/06/01 NodeJs
JavaScript实现图片DIV竖向滑动的方法
2015/04/25 Javascript
JavaScript的Backbone.js框架的一些使用建议整理
2016/02/14 Javascript
js显示动态时间的方法详解
2016/08/20 Javascript
BootStrap tooltip提示框使用小结
2016/10/26 Javascript
js获取当前时间(昨天、今天、明天)
2016/11/23 Javascript
详解动画插件wow.js的使用方法
2017/09/13 Javascript
vue中简单弹框dialog的实现方法
2018/02/26 Javascript
vue router的基本使用和配置教程
2018/11/05 Javascript
jQuery实现穿梭框效果
2021/01/19 jQuery
在Python中使用SQLite的简单教程
2015/04/29 Python
python Django批量导入不重复数据
2016/03/25 Python
Python实现计算两个时间之间相差天数的方法
2017/05/10 Python
Python GUI Tkinter简单实现个性签名设计
2018/06/19 Python
Python对接 xray 和微信实现自动告警
2019/09/17 Python
python ETL工具 pyetl
2020/06/07 Python
详解Python遍历列表时删除元素的正确做法
2021/01/07 Python
全球知名提供各类营养保健品的零售商:Vitamin Shoppe
2016/10/09 全球购物
英国独特家具和家庭用品购物网站:Cuckooland
2020/08/30 全球购物
介绍一下.NET构架下remoting和webservice
2014/05/08 面试题
2013的个人自我评价
2013/12/26 职场文书
大二学习计划书范文
2014/04/27 职场文书
质量月活动总结
2014/08/26 职场文书
2015年第十五个全民国防教育日宣传活动方案
2015/05/06 职场文书
高中班主任培训心得体会
2016/01/07 职场文书
廉洁自律心得体会2016
2016/01/13 职场文书
Python中Schedule模块使用详解 周期任务神器
2022/04/19 Python