zoukankan      html  css  js  c++  java
  • JS脚本检查密码强度

    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
    <title>无标题文档</title>
    <script type="text/javascript"> 
    //CharMode函数 
    //测试某个字符是属于哪一类. 
    function CharMode(iN){ 
    if (iN>=48 && iN <=57) //数字 
    return 1; 
    if (iN>=65 && iN <=90) //大写字母 
    return 2; 
    if (iN>=97 && iN <=122) //小写 
    return 4; 
    else 
    return 8; //特殊字符 


    //bitTotal函数 
    //计算出当前密码当中一共有多少种模式 
    function bitTotal(num){ 
    modes=0; 
    for (i=0;i<4;i++){ 
    if (num & 1) modes++; 
    num>>>=1; 

    return modes; 


    //checkStrong函数 
    //返回密码的强度级别 

    function checkStrong(sPW){ 
    //密码长度
    if (sPW.length<=4) 
    return 0; //密码太短 
    Modes=0; 
    for (i=0;i<sPW.length;i++){ 
    //测试每一个字符的类别并统计一共有多少种模式. 
    //目前未知|=的意思
    Modes|=CharMode(sPW.charCodeAt(i)); 


    return bitTotal(Modes); 



    //pwStrength函数 
    //当用户放开键盘或密码输入框失去焦点时,根据不同的级别显示不同的颜色 
    function pwStrength(pwd){
    O_color="#eeeeee"; //白色
    L_color="#FF0000"; //绿色
    M_color="#FF9900"; //黄色
    H_color="#33CC00"; //红色
    if (pwd==null||pwd==''){ 
    //不用var声明变量连=号连接赋值
    Lcolor=Mcolor=Hcolor=O_color; 

    else{ 
    //检查字符串安全级别返回级别数据进行判断
    S_level=checkStrong(pwd); 
    //判断密码级别
    switch(S_level) { 
    case 0: 
    //给每个变量赋颜色
    Lcolor=Mcolor=Hcolor=O_color; 
    case 1: 
    //给每个变量赋颜色
    Lcolor=L_color; 
    Mcolor=Hcolor=O_color; 
    break; 
    case 2: 
    //给每个变量赋颜色
    Lcolor=Mcolor=M_color; 
    Hcolor=O_color; 
    break; 
    default: 
    //给每个变量赋颜色
    Lcolor=Mcolor=Hcolor=H_color; 


    //向每个单元格赋颜色
    document.getElementById("strength_L").style.background=Lcolor; 
    document.getElementById("strength_M").style.background=Mcolor; 
    document.getElementById("strength_H").style.background=Hcolor; 
    return; 

    </script>

    </head>

    <body>
    <form name=form1 action="" > 
    输入密码:<input type="password" size="20" onKeyUp="pwStrength(this.value);" onBlur="pwStrength(this.value);"/>
    <br>密码强度: 
    <table width="217" border="1" cellspacing="0" cellpadding="1" bordercolor="#cccccc" height="23" style=’display:inline’> 
    <tr align="center" bgcolor="#eeeeee"> 
    <td width="33%" id="strength_L">弱</td> 
    <td width="33%" id="strength_M">中</td> 
    <td width="33%" id="strength_H">强</td> 
    </tr> 
    </table> 
    </form>
    </body>
    </html>

  • 相关阅读:
    【转】RocketMQ事务消费和顺序消费详解
    RocketMQ初探(五)之RocketMQ4.2.6集群部署(单Master+双Master+2m+2s+async异步复制)
    Spring定时器Quartz的使用
    RocketMQ初探(四)之RocketMQ4.x版本可视化管理控制台rocketmq-console-ng搭建(Apache)
    RocketMQ入门(简介、特点)
    RocketMQ初探(二)之RocketMQ3.26版本搭建(含简单Demo测试案例)
    RocketMQ初探(一)
    tomcat详解
    HDFS读写流程
    RabbitMQ
  • 原文地址:https://www.cnblogs.com/taiyonghai/p/5604039.html
Copyright © 2011-2022 走看看