JS實(shí)現(xiàn)的四級(jí)密碼強(qiáng)度檢測(cè)功能示例
本文實(shí)例講述了JS實(shí)現(xiàn)的四級(jí)密碼強(qiáng)度檢測(cè)功能。分享給大家供大家參考,具體如下:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title> 密碼強(qiáng)度檢測(cè) </title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <style type="text/css"> input{float: left; font-size: 14px; width: 250px; height: 25px; border: 1px solid #ccc; padding-left: 10px;} #tips{float: left; font-size: 12px; width: 400px; height: 25px; margin: 4px 0 0 20px;} #tips span{float: left; width: 40px; height: 20px; color: #fff; overflow:hidden; margin-right: 10px; background: #D7D9DD; line-height:20px; text-align: center; } #tips .s1{background: #F45A68;}/*紅色*/ #tips .s2{background: #fc0;}/*橙色*/ #tips .s3{background: #cc0;}/*黃色*/ #tips .s4{background: #14B12F;}/*綠色*/ </style> </head> <body> <input type="text" id="password" value="" maxlength="16" /> <div id="tips"> <span>弱</span> <span>中</span> <span>強(qiáng)</span> <span>很強(qiáng)</span> </div> </body> <script type="text/javascript"> var password = document.getElementById("password"); //獲取文本框的對(duì)象 //var value = password.value; //獲取用戶在文本框里面填寫(xiě)的值 //獲取所有的span標(biāo)簽 返回值是一個(gè)數(shù)組 var spanDoms = document.getElementsByTagName("span"); password.onkeyup = function(){ //獲取用戶輸入的密碼,然后判斷其強(qiáng)度 返回0 或者 1 2 3 4 var index = checkPassWord(this.value); for(var i = 0; i <spanDoms.length; i++){ spanDoms[i].className = "";//清空span標(biāo)簽所有的class樣式 if(index){//0 代表false 其余代表true spanDoms[index-1].className = "s" + index ; } } } //校驗(yàn)密碼強(qiáng)度 function checkPassWord(value){ // 0: 表示第一個(gè)級(jí)別 1:表示第二個(gè)級(jí)別 2:表示第三個(gè)級(jí)別 // 3: 表示第四個(gè)級(jí)別 4:表示第五個(gè)級(jí)別 var modes = 0; if(value.length < 6){//最初級(jí)別 return modes; } if(/\d/.test(value)){//如果用戶輸入的密碼 包含了數(shù)字 modes++; } if(/[a-z]/.test(value)){//如果用戶輸入的密碼 包含了小寫(xiě)的a到z modes++; } if(/[A-Z]/.test(value)){//如果用戶輸入的密碼 包含了大寫(xiě)的A到Z modes++; } if(/\W/.test(value)){//如果是非數(shù)字 字母 下劃線 modes++; } switch(modes){ case 1 : return 1; break; case 2 : return 2; break; case 3 : return 3; break; case 4 : return 4; break; } } </script> </html>
說(shuō)明: 這里實(shí)現(xiàn)的功能主要是,輸入密碼的時(shí)候,一邊輸一邊檢測(cè),有四個(gè)安全級(jí)別,當(dāng)輸入的密碼符合某個(gè)級(jí)別的規(guī)則時(shí),該級(jí)別的標(biāo)志條就會(huì)高亮變色。
下面是測(cè)試的情況,(這里為了能看到效果,所以把type=“password”故意改成type=“text”),至于檢測(cè)中級(jí)別的規(guī)則,讀者可以自己根據(jù)需要自行修改,主要是js正則表達(dá)式的修改。另外,當(dāng)把最后一個(gè)圖片的輸入內(nèi)容,逐步地刪除,直到只剩第一個(gè)圖片的輸入內(nèi)容,這一過(guò)程中,效果就是下面的 從下到上變化了
PS:這里再為大家提供幾款相關(guān)在線工具供大家參考使用:
密碼安全性在線檢測(cè):
http://tools.jb51.net/password/my_password_safe
在線隨機(jī)數(shù)字/字符串生成工具:
http://tools.jb51.net/aideddesign/suijishu
高強(qiáng)度密碼生成器:
http://tools.jb51.net/password/CreateStrongPassword
更多關(guān)于JavaScript相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《JavaScript數(shù)學(xué)運(yùn)算用法總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript數(shù)組操作技巧總結(jié)》、《JavaScript排序算法總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》、《JavaScript查找算法技巧總結(jié)》及《JavaScript錯(cuò)誤與調(diào)試技巧總結(jié)》
希望本文所述對(duì)大家JavaScript程序設(shè)計(jì)有所幫助。
- javascript密碼強(qiáng)度校驗(yàn)代碼(兩種方法)
- JS 密碼強(qiáng)度驗(yàn)證(兼容IE,火狐,谷歌)
- js檢驗(yàn)密碼強(qiáng)度(低中高)附圖
- js檢測(cè)用戶輸入密碼強(qiáng)度
- js正則表達(dá)式驗(yàn)證密碼強(qiáng)度【推薦】
- 用于判斷用戶注冊(cè)時(shí),密碼強(qiáng)度的JS代碼
- js在客戶端驗(yàn)證密碼強(qiáng)度,兼容FireFox和IE
- JavaScript 密碼強(qiáng)度判斷代碼
- js密碼強(qiáng)度校驗(yàn)
- javascript 密碼強(qiáng)度驗(yàn)證規(guī)則、打分、驗(yàn)證(給出前端代碼,后端代碼可根據(jù)強(qiáng)度規(guī)則翻譯)
- js實(shí)現(xiàn)密碼強(qiáng)度檢測(cè)【附示例】
- JavaScript動(dòng)態(tài)檢測(cè)密碼強(qiáng)度原理及實(shí)現(xiàn)方法詳解
相關(guān)文章
js中的數(shù)組轉(zhuǎn)樹(shù)型結(jié)構(gòu)方式
這篇文章主要介紹了js中的數(shù)組轉(zhuǎn)樹(shù)型結(jié)構(gòu)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-06-06JavaScript中獲取當(dāng)前時(shí)間yyyymmddhhmmss的六種實(shí)現(xiàn)方式
js中提供了一個(gè)Date對(duì)象供我們獲取當(dāng)前時(shí)間,下面這篇文章主要給大家介紹了關(guān)于JavaScript中獲取當(dāng)前時(shí)間yyyymmddhhmmss的六種實(shí)現(xiàn)方式,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-12-12JavaScript prototype對(duì)象的屬性說(shuō)明
JavaScript中對(duì)象的prototype屬性,是用來(lái)返回對(duì)象類(lèi)型原型的引用的。我們使用prototype屬性提供對(duì)象的類(lèi)的一組基本功能。并且對(duì)象的新實(shí)例會(huì)”繼承”賦予該對(duì)象原型的操作。但是這個(gè)prototype到底是怎么實(shí)現(xiàn)和被管理的呢?2010-03-03詳解webpack-dev-server 設(shè)置反向代理解決跨域問(wèn)題
后端只負(fù)責(zé)接口,前端負(fù)責(zé)數(shù)據(jù)展示、邏輯處理。那么如何跨域?這篇文章主要介紹了webpack-dev-server 設(shè)置反向代理解決跨域問(wèn)題,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-04-04JS實(shí)現(xiàn)模擬風(fēng)力的雪花飄落效果
這篇文章主要介紹了JS實(shí)現(xiàn)模擬風(fēng)力的雪花飄落效果,可在右側(cè)填入風(fēng)力值點(diǎn)擊按鈕即可看到伴隨風(fēng)力的雪花飄落效果,同時(shí)右側(cè)有實(shí)時(shí)雪花數(shù)量統(tǒng)計(jì)功能,需要的朋友可以參考下2015-05-05elementui更改el-dialog關(guān)閉按鈕的圖標(biāo)d的示例代碼
這篇文章主要介紹了elementui更改el-dialog關(guān)閉按鈕的圖標(biāo),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-08-08JavaScript數(shù)據(jù)結(jié)構(gòu)之?dāng)?shù)組的表示方法示例
這篇文章主要介紹了JavaScript數(shù)據(jù)結(jié)構(gòu)之?dāng)?shù)組的表示方法,從數(shù)據(jù)結(jié)構(gòu)線性表的角度分析了數(shù)組的原理并結(jié)合實(shí)例形式分析了javascript數(shù)組的定義與使用方法,需要的朋友可以參考下2017-04-04