js檢驗(yàn)密碼強(qiáng)度(低中高)附圖
更新時(shí)間:2014年06月05日 17:23:43 作者:
注冊(cè)模塊中輸入密碼需要顯示密碼強(qiáng)度(低中高)本例將做的效果給大家分享下
最近一直在做通行證項(xiàng)目,里面的注冊(cè)模塊中輸入密碼需要顯示密碼強(qiáng)度(低中高)。今天就把做的效果給大家分享下,代碼沒有網(wǎng)上搜索的那么復(fù)雜,能夠滿足一般的需求。
html 代碼如下:
<!DOCTYPE HTML>
<html lang="en">
<head>
<meta charset="utf-8"/>
<title>密碼強(qiáng)度</title>
<style type="text/css">
#passStrength{height:6px;width:120px;border:1px solid #ccc;padding:2px;}
.strengthLv1{background:red;height:6px;width:40px;}
.strengthLv2{background:orange;height:6px;width:80px;}
.strengthLv3{background:green;height:6px;width:120px;}
</style>
</head>
<body>
<input type="password" name="pass" id="pass" maxlength="16"/>
<div class="pass-wrap">
<em>密碼強(qiáng)度:</em>
<div id="passStrength"></div>
</div>
</body>
</html>
<script type="text/javascript" src="js/passwordStrength.js"></script>
<script type="text/javascript">
new PasswordStrength('pass','passStrength');
</script>
js 代碼如下:
function PasswordStrength(passwordID,strengthID){
this.init(strengthID);
var _this = this;
document.getElementById(passwordID).onkeyup = function(){
_this.checkStrength(this.value);
}
};
PasswordStrength.prototype.init = function(strengthID){
var id = document.getElementById(strengthID);
var div = document.createElement('div');
var strong = document.createElement('strong');
this.oStrength = id.appendChild(div);
this.oStrengthTxt = id.parentNode.appendChild(strong);
};
PasswordStrength.prototype.checkStrength = function (val){
var aLvTxt = ['','低','中','高'];
var lv = 0;
if(val.match(/[a-z]/g)){lv++;}
if(val.match(/[0-9]/g)){lv++;}
if(val.match(/(.[^a-z0-9])/g)){lv++;}
if(val.length < 6){lv=0;}
if(lv > 3){lv=3;}
this.oStrength.className = 'strengthLv' + lv;
this.oStrengthTxt.innerHTML = aLvTxt[lv];
};
效果圖:
使用說明:
1、對(duì)象的第一個(gè)參數(shù)是密碼輸入框的 id,第二個(gè)參數(shù)是密碼強(qiáng)度長條的 id。
2、checkStrength 方法中可以自定義密碼強(qiáng)度的規(guī)則。
3、密碼強(qiáng)度顯示低中高分別對(duì)應(yīng) 3 個(gè) css 樣式(strengthLv1、strengthLv2、strengthLv3)。
html 代碼如下:
復(fù)制代碼 代碼如下:
<!DOCTYPE HTML>
<html lang="en">
<head>
<meta charset="utf-8"/>
<title>密碼強(qiáng)度</title>
<style type="text/css">
#passStrength{height:6px;width:120px;border:1px solid #ccc;padding:2px;}
.strengthLv1{background:red;height:6px;width:40px;}
.strengthLv2{background:orange;height:6px;width:80px;}
.strengthLv3{background:green;height:6px;width:120px;}
</style>
</head>
<body>
<input type="password" name="pass" id="pass" maxlength="16"/>
<div class="pass-wrap">
<em>密碼強(qiáng)度:</em>
<div id="passStrength"></div>
</div>
</body>
</html>
<script type="text/javascript" src="js/passwordStrength.js"></script>
<script type="text/javascript">
new PasswordStrength('pass','passStrength');
</script>
js 代碼如下:
復(fù)制代碼 代碼如下:
function PasswordStrength(passwordID,strengthID){
this.init(strengthID);
var _this = this;
document.getElementById(passwordID).onkeyup = function(){
_this.checkStrength(this.value);
}
};
PasswordStrength.prototype.init = function(strengthID){
var id = document.getElementById(strengthID);
var div = document.createElement('div');
var strong = document.createElement('strong');
this.oStrength = id.appendChild(div);
this.oStrengthTxt = id.parentNode.appendChild(strong);
};
PasswordStrength.prototype.checkStrength = function (val){
var aLvTxt = ['','低','中','高'];
var lv = 0;
if(val.match(/[a-z]/g)){lv++;}
if(val.match(/[0-9]/g)){lv++;}
if(val.match(/(.[^a-z0-9])/g)){lv++;}
if(val.length < 6){lv=0;}
if(lv > 3){lv=3;}
this.oStrength.className = 'strengthLv' + lv;
this.oStrengthTxt.innerHTML = aLvTxt[lv];
};
效果圖:

使用說明:
1、對(duì)象的第一個(gè)參數(shù)是密碼輸入框的 id,第二個(gè)參數(shù)是密碼強(qiáng)度長條的 id。
2、checkStrength 方法中可以自定義密碼強(qiáng)度的規(guī)則。
3、密碼強(qiáng)度顯示低中高分別對(duì)應(yīng) 3 個(gè) css 樣式(strengthLv1、strengthLv2、strengthLv3)。
您可能感興趣的文章:
- JS正則表達(dá)式驗(yàn)證密碼強(qiáng)度
- 原生js實(shí)現(xiàn)密碼強(qiáng)度驗(yàn)證功能
- JavaScript實(shí)現(xiàn)密碼強(qiáng)度實(shí)時(shí)驗(yàn)證
- js如何驗(yàn)證密碼強(qiáng)度
- js驗(yàn)證密碼強(qiáng)度解析
- javascript密碼強(qiáng)度校驗(yàn)代碼(兩種方法)
- JS 密碼強(qiáng)度校驗(yàn)的正則表達(dá)式(簡單且好用)
- js檢測用戶輸入密碼強(qiáng)度
- js密碼強(qiáng)度實(shí)時(shí)檢測代碼
- js判斷密碼強(qiáng)度的方法
相關(guān)文章
JavaScript判斷表單為空及獲取焦點(diǎn)的方法
這篇文章主要介紹了JavaScript判斷表單為空及獲取焦點(diǎn)的方法,可實(shí)現(xiàn)表單提交時(shí)判斷表單是否為空及獲取響應(yīng)焦點(diǎn)的功能,非常簡單實(shí)用,需要的朋友可以參考下2016-02-02詳解JavaScript中?.、??和??=的用法及使用場景
這篇文章主要為大家詳細(xì)介紹了JavaScript中?.、??和??=的用法及使用場景,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-08-08javascript實(shí)現(xiàn)拍照功能詳細(xì)示例代碼
這篇文章主要給大家介紹了關(guān)于javascript實(shí)現(xiàn)拍照功能的相關(guān)資料, 最近做項(xiàng)目,遇到一個(gè)正常但又少見的需求之拍照,文中給出了詳細(xì)的代碼示例,需要的朋友可以參考下2023-07-07js分解url參數(shù)(面向?qū)ο?極簡主義法應(yīng)用)
剛看到笑看風(fēng)云寫的JavaScript面向?qū)ο?極簡主義法)和一個(gè)分解url參數(shù)面試題,我作了一下修改,記錄下來2012-08-08