改善使用者體驗 製作實用密碼強度提示

來源:互聯網
上載者:User

  功能說明:在使用者註冊或更改密碼時,根據使用者輸入進行檢測並返回結果。能有效地提醒使用者提高帳號的安全性。

  類似效果:Live.com中的修改密碼功能

  運行代碼框

  簡單預覽

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>密碼</title>
<style type="text/css">
body{
 font-size:12px;
 font-family: Arial, Helvetica, sans-serif;
 margin:0;
}
form{
 margin:2em;
}
#chkResult{margin-left:53px;height:15px;}
</style>
</head>

<body>
<form name="form1">
 <label for="pwd">使用者密碼</label>
 <input type="password" name="pwd" onblur="chkpwd(this)" />
 <div id="chkResult"></div>
 <label for="pwd2">重複密碼</label>
 <input type="password" name="pwd2" />
</form>
<script type="text/javascript">
 function chkpwd(obj){
  var t=obj.value;
  var id=getResult(t);
  
  //定義對應的訊息提示
  var msg=new Array(4);
  msg[0]="密碼過短。";
  msg[1]="密碼強度差。";
  msg[2]="密碼強度良好。";
  msg[3]="密碼強度高。";
  
  var sty=new Array(4);
  sty[0]=-45;
  sty[1]=-30;
  sty[2]=-15;
  sty[3]=0;
  
  var col=new Array(4);
  col[0]="gray";
  col[1]="red";
  col[2]="#ff6600";
  col[3]="Green";
  
  //設定顯示效果
  var bImg="http://www.alixixi.com/UploadPic/2007-7/200777163934640.gif";//一張顯示用的圖片
  var sWidth=300;
  var sHeight=15;
  var Bobj=document.getElementById("chkResult");

  Bobj.style.fontSize="12px";
  Bobj.style.color=col[id];
  Bobj.style.width=sWidth + "px";
  Bobj.style.height=sHeight + "px";
  Bobj.style.lineHeight=sHeight + "px";
  Bobj.style.background="url(" + bImg + ") no-repeat left " + sty[id] + "px";
  Bobj.style.textIndent="20px";
  Bobj.innerHTML="檢測提示:" + msg[id];
 }
 
 //定義檢測函數,返回0/1/2/3分別代表無效/差/一般/強
 function getResult(s){
  if(s.length < 4){
   return 0;
  }
  var ls = 0;
  if (s.match(/[a-z]/ig)){
   ls++;
  }
  if (s.match(/[0-9]/ig)){
   ls++;
  }
   if (s.match(/(.[^a-z0-9])/ig)){
   ls++;
  }
  if (s.length < 6 && ls > 0){
   ls--;
  }
  return ls
 }
</script>
</body>

</html>

  使用方法:

  第一步:儲存圖片

  第二步:根據您的需要修改js檔案中該圖片地址。如下所示:

var bImg="pwdlen.gif";//一張顯示用的圖片

  第三步:在需要檢測的頁面中引用這個指令檔,如下所示:

<script type="text/javascript" src="chkpwd.js"></script>

  第四步:在網頁的表單中,找到密碼輸入框添加onblur事件驅動,然後添加一個Div,如下所示:

<input type="password" name="pwd" onblur="chkpwd(this)" />
<div id="chkResult">強度檢測</div>

  第五步:根據您頁面的需要通過樣式表CSS重新定義#chkResult的擺放位置,以合適您網頁的整體布局。



相關文章

Beyond APAC's No.1 Cloud

19.6% IaaS Market Share in Asia Pacific - Gartner IT Service report, 2018

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。