JavaScript實現(xiàn)密碼強度實時驗證
JavaScript實現(xiàn)密碼強度實時驗證,供大家參考,具體內(nèi)容如下
在網(wǎng)絡服務中,為了保證用戶的私密信息足夠安全,會要求用戶輸入具有一定安全級別的密碼,這樣可以更好的防止他人盜用。比如在注冊一些游戲賬號時,如果輸入純數(shù)字或純英文字符低于6位,就會提示密碼強度太低,請重新輸入。一些密碼強度驗證的方法都是計算字符的類型,然后分類加權累算。權重越高,相應的強度也就越高。
具體的寫法及實現(xiàn)方式有很多種,本文只介紹其中一種方案
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>密碼強度實時驗證</title> </head> <body> <h2>密碼強度實時驗證</h2> <input id="passwordStrength" data-hint='請輸入密碼' type="password" ><span id="showStrength"></span> <script type="text/javascript"> window.onload = function () { function setCss(_this,cssOption){ //判斷節(jié)點類型 if (!_this || _this.nodeType ===3 || _this.nodeType === 8 ||!_this.style) { return; } for(var cs in cssOption){ _this.style[cs] = cssOption[cs]; } return _this; } function trim(chars){ return (chars ||"").replace(/^(\s|\u00a0)+|(\s|\u00a0)+$/g,""); } function passwordStrength(passwordStrength,showStrength){ var self = this; /*字符權重; 數(shù)字1,字母2,其他字符為3 當密碼長度小于6時不符合標準 長度>=6,強度小于10,強度弱 長度>=6,長度>=10且<15,強度中 長度>=6,強度>=15,強*/ passwordStrength.onkeyup = function(){ var _color = ["red","yellow","orange","green"], msgs = ["密碼太短","弱","中","強"], _strength = 0, _v= trim(passwordStrength.value) _vL= _v.length, i=0; var charStrength = function(char){ //計算單個字符強度 if(char>=48 && char <=57){//數(shù)字 return 1; } if(char>=97 && char<=122){//小寫 return 2; }else{ return 3; //特殊字符 } } if(_vL<6){//計算模式 showStrength.innerText = msgs[0]; setCss(showStrength,{ "color":_color[0] }) }else{ for(;i<_vL;i++){ //遍歷字符 _strength+=charStrength(_v.toLocaleLowerCase().charCodeAt(i)); } if(_strength<10){ //強度小于10 showStrength.innerText = msgs[1]; setCss(showStrength,{ "color":_color[1] }) } if(_strength>=10&&_strength<15){ showStrength.innerText = msgs[2]; setCss(showStrength,{ "color":_color[2] }) } if(_strength>=15){ showStrength.innerText = msgs[3]; setCss(showStrength,{ "color":_color[3] }) } } } } passwordStrength( document.getElementById("passwordStrength"), document.getElementById("showStrength")); }; </script> </body> </html>
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
基于JavaScript如何實現(xiàn)私有成員的語法特征及私有成員的實現(xiàn)方式
本文給大家介紹基于JavaScript如何實現(xiàn)私有成員的語法特征及私有成員的實現(xiàn)方式,涉及到javascript語法特征相關知識,對本文感興趣的朋友快來一起學習吧2015-10-10Javascript+CSS實現(xiàn)影像卷簾效果思路及代碼
Arcmap里面的一個卷簾效果肯定記憶很深刻,我也對這種比較炫的卷簾效果做了一下研究,現(xiàn)在給大家匯報下結果2014-10-10基于JavaScript實現(xiàn) 網(wǎng)頁切出 網(wǎng)站title變化代碼
這篇文章主要介紹了基于JavaScript實現(xiàn) 網(wǎng)頁切出 網(wǎng)站title變化代碼的相關資料,需要的朋友可以參考下2016-04-04用javascript動態(tài)調(diào)整iframe高度的代碼
用javascript動態(tài)調(diào)整iframe高度的代碼...2007-04-04JavaScript使用addEventListener添加事件監(jiān)聽用法實例
這篇文章主要介紹了JavaScript使用addEventListener添加事件監(jiān)聽的方法,實例分析了addEventListener方法的相關使用技巧,需要的朋友可以參考下2015-06-06前端實現(xiàn)word文檔預覽和內(nèi)容提取的詳細過程
在前端直接讀取并原樣展示W(wǎng)ord文檔是一個相對復雜的任務,因為Word文檔的格式(如.doc或.docx)與Web技術棧使用的格式(HTML、CSS)不兼容,下面這篇文章主要給大家介紹了關于前端實現(xiàn)word文檔預覽和內(nèi)容提取的詳細過程,需要的朋友可以參考下2024-05-05JavaScript 異步方法隊列鏈實現(xiàn)代碼分析
在javascript中,方法的鏈式調(diào)用很流行,使用jQuery的朋友對此一定深有體會。2010-06-06