javascript检测用户输入密码强度实现代码
我们只要在input中加个离开事件,再来检测用户输入密码强度这样就可以像很多网站看到的一些有色彩表示的效果,如果密码由数字、小写字母、大写字母或其它特殊符号,则认为这是一
我们只要在input中加个离开事件,再来检测用户输入密码强度这样就可以像很多网站看到的一些有色彩表示的效果,如果密码由数字、小写字母、大写字母或其它特殊符号,则认为这是一个比较安全的密码。
代码如下 | |
<script language="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==''){ 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.getElementByIdx_x("strength_L").style.background=Lcolor; document.getElementByIdx_x("strength_M").style.background=Mcolor; document.getElementByIdx_x("strength_H").style.background=Hcolor; return; </script> <form name=form1 action="" > 输入密码:<input type="password" size="10" 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> |
精彩图集
精彩文章