首頁 >web前端 >js教程 >js偵測使用者輸入密碼強度_javascript技巧

js偵測使用者輸入密碼強度_javascript技巧

WBOY
WBOY原創
2016-05-16 15:35:34939瀏覽

一個用Javascript檢測使用者輸入密碼強度的效果代碼,以下代碼主要是從以下四個方面檢測用戶輸入的密碼的強度的,有興趣的朋友可以自己添加或修改成自己想要的形式!
1. 如果輸入的密碼位數少於5位,那麼就判定為弱。
2. 若輸入的密碼只由數字、小寫字母、大寫字母或其它特殊符號當中的一種組成,則判定為弱。
3. 若密碼由數字、小寫字母、大寫字母或其它特殊符號當中的兩種組成,則判定為中。
4. 若密碼由數字、小寫字母、大寫字母或其它特殊符號當中的三種以上組成,則判定為強。
先來看看這個實現的效果吧!

以下是具體利用Javascript來偵測使用者輸入密碼強度的效果程式碼。
html部分代碼:

<input name="password" type="PassWord" onKeyUp="CheckIntensity(this.value)"> 
<table border="0" cellpadding="0" cellspacing="0"> 
 <tr align="center"> 
  <td id="pwd_Weak" class="pwd pwd_c"> </td> 
  <td id="pwd_Medium" class="pwd pwd_c pwd_f">无</td> 
  <td id="pwd_Strong" class="pwd pwd_c pwd_c_r"> </td> 
 </tr> 
</table> 

css部分代碼:

.pwd{width:40px;height:20px;line-height:14px;padding-top:2px;} 
.pwd_f{color:#BBBBBB;} 
.pwd_c{background-color:#F3F3F3;border-top:1px solid #D0D0D0;border-bottom:1px solid #D0D0D0;border-left:1px solid #D0D0D0;} 
.pwd_Weak_c{background-color:#FF4545;border-top:1px solid #BB2B2B;border-bottom:1px solid #BB2B2B;border-left:1px solid #BB2B2B;} 
.pwd_Medium_c{background-color:#FFD35E;border-top:1px solid #E9AE10;border-bottom:1px solid #E9AE10;border-left:1px solid #E9AE10;} 
.pwd_Strong_c{background-color:#3ABB1C;border-top:1px solid #267A12;border-bottom:1px solid #267A12;border-left:1px solid #267A12;} 
.pwd_c_r{border-right:1px solid #D0D0D0;} 
.pwd_Weak_c_r{border-right:1px solid #BB2B2B;} 
.pwd_Medium_c_r{border-right:1px solid #E9AE10;} 
.pwd_Strong_c_r{border-right:1px solid #267A12;} 

使用到的Js函數:

function CheckIntensity(pwd){ 
 var Mcolor,Wcolor,Scolor,Color_Html; 
 var m=0; 
 var Modes=0; 
 for(i=0; i<pwd.length; i++){ 
  var charType=0; 
  var t=pwd.charCodeAt(i); 
  if(t>=48 && t <=57){charType=1;} 
  else if(t>=65 && t <=90){charType=2;} 
  else if(t>=97 && t <=122){charType=4;} 
  else{charType=4;} 
  Modes |= charType; 
 } 
 for(i=0;i<4;i++){ 
 if(Modes & 1){m++;} 
   Modes>>>=1; 
 } 
 if(pwd.length<=4){m=1;} 
 if(pwd.length<=0){m=0;} 
 switch(m){ 
  case 1 : 
   Wcolor="pwd pwd_Weak_c"; 
   Mcolor="pwd pwd_c"; 
   Scolor="pwd pwd_c pwd_c_r"; 
   Color_Html="弱"; 
  break; 
  case 2 : 
   Wcolor="pwd pwd_Medium_c"; 
   Mcolor="pwd pwd_Medium_c"; 
   Scolor="pwd pwd_c pwd_c_r"; 
   Color_Html="中"; 
  break; 
  case 3 : 
   Wcolor="pwd pwd_Strong_c"; 
   Mcolor="pwd pwd_Strong_c"; 
   Scolor="pwd pwd_Strong_c pwd_Strong_c_r"; 
   Color_Html="强"; 
  break; 
  default : 
   Wcolor="pwd pwd_c"; 
   Mcolor="pwd pwd_c pwd_f"; 
   Scolor="pwd pwd_c pwd_c_r"; 
   Color_Html="无"; 
  break; 
 } 
 document.getElementById('pwd_Weak').className=Wcolor; 
 document.getElementById('pwd_Medium').className=Mcolor; 
 document.getElementById('pwd_Strong').className=Scolor; 
 document.getElementById('pwd_Medium').innerHTML=Color_Html; 
} 

密碼設定的強度對使用者資訊安全尤為重要,所以大家一定要重視,不僅在開發專案中要隨時注意,還有在平時註冊資訊的時候也要提高密碼的強度,保護個人資訊安全,希望這篇文章對大家的學習有幫助。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn