验证密码强度的js

代码
 1  <script type="text/javascript">
 2    function CharMode(iN){
 3         if (iN>=48 && iN <=57)
 4         return 1
 5         if (iN>=65 && iN <=90)
 6         return 2;
 7         if (iN>=97 && iN <=122)
 8         return 4;
 9         else
10         return 8;
11      }
12    function bitTotal(num){
13         modes=0;
14         for (i=0;i<4;i++){
15         if (num & 1) modes++;
16         num>>>=1;
17         }
18         return modes;
19       }
20 
21         function checkStrong(sPW){
22             if (sPW.length<=4)
23             return 0;
24             Modes=0;
25             for (i=0;i<sPW.length;i++){
26             Modes|=CharMode(sPW.charCodeAt(i));
27             }
28               return bitTotal(Modes);
29         } 
30         function pwStrength(pwd){
31             O_color="#eeeeee";
32             L_color="#FF0000";
33             M_color="#FF9900";
34             H_color="#33CC00";
35         if (pwd==null||pwd==''){
36             Lcolor=Mcolor=Hcolor=O_color;
37         } 
38         else{
39             S_level=checkStrong(pwd);
40             switch(S_level) {
41             case 0:
42             Lcolor=Mcolor=Hcolor=O_color; 
43             case 1:
44             Lcolor=L_color;
45             Mcolor=Hcolor=O_color;
46             break;
47             case 2:
48             Lcolor=Mcolor=M_color;
49             Hcolor=O_color;
50             break;
51             default:
52             Lcolor=Mcolor=Hcolor=H_color;
53          }
54         } 
55         document.getElementById("strength_L").style.background=Lcolor;
56         document.getElementById("strength_M").style.background=Mcolor;
57         document.getElementById("strength_H").style.background=Hcolor;
58         return;
59      }
60     </script>
61 
62 </head>
63 <body>
64     <form id="form1" runat="server">
65     <div>
66         <input id="Password1" type="password" onkeyup="pwStrength(this.value)" />
67         <table style="display: inline" bordercolor="#cfe8fe" height="20 " cellspacing="0"
68             cellpadding="1" width="160" border="1">
69             <tr>
70                 <td>
71                 </td>
72             </tr>
73             <tr align="center" bgcolor="#ffffff">
74                 <td width="33%" id="strength_L">
75                     弱
76                 </td>
77                 <td width="33%" id="strength_M">
78                     中
79                 </td>
80                 <td width="33%" id="strength_H">
81                     强
82                 </td>
83             </tr>
84         </table>
85     </div>
86     </form>
87 </body>
88 </html>


posted @ 2009-12-15 14:51  不必太用力  阅读(154)  评论(0编辑  收藏  举报