首頁  >  文章  >  web前端  >  JS 密碼強度驗證(相容IE,火狐,Google)

JS 密碼強度驗證(相容IE,火狐,Google)

高洛峰
高洛峰原創
2017-01-16 09:12:51954瀏覽

大概样式: 

JS 密碼強度驗證(相容IE,火狐,Google)

源码: 

//=================HTML页面================= 
<body onload="InitCss();"> 
<form> 
<div> 
<table> 
<tr> 
<td> 
密码: 
</td> 
<td> 
<input id="txtPassword" type="password" style="width: 130px;" maxlength="16" onfocus="InitCss();" 
onblur="ValidateInput(&#39;password&#39;,this.value)" onkeydown="validatePwdStrong(this.value);" /> 
</td> 
<td> 
<div id="tipPosition"> 
</div> 
</td> 
</tr> 
<tr> 
<td> 
</td> 
<td> 
<table id="pwdStrong_color"> 
<tr> 
<td id="pwdStrong_1"> 
</td> 
<td id="pwdStrong_2"> 
</td> 
<td id="pwdStrong_3"> 
</td> 
<td id="pwdStrong_4"> 
</td> 
</tr> 
</table> 
</td> 
<td> 
<div id="pwdStrong_text"> 
</div> 
</td> 
</tr> 
</table> 
</div> 
</form> 
</body>

JS文件 

//使用$替换document.getElementById函数 
var $ = function(v) { return document.getElementById(v); } 

/******************************************************验证用户输入******************************************************/ 
function ValidateInput(element, value) { 
//验证密码 
if (element == "password") { 
if (value.toString().length < 6) { 
$(&#39;tipPosition&#39;).className = &#39;error&#39;; 
$(&#39;tipPosition&#39;).innerHTML = "密码设置错误。密码长度过小。"; 
return; 
} 
else { 
$(&#39;tipPosition&#39;).className = &#39;success&#39;; 
$(&#39;tipPosition&#39;).innerHTML = "填写正确。"; 
} 
} 
} 
/*================================密码验证JS =========== Begin=======================================*/ 
//密码初始化的样式 
function InitCss() { 
$(&#39;tipPosition&#39;).className = &#39;tip&#39;; 
$(&#39;tipPosition&#39;).innerHTML = "最小长度:6。 最大长度:16。"; 
} 

/*================================密码强度 ===========Begin=======================================*/ 

function Evaluate(word) { 
return word.replace(/^(?:([a-z])|([A-Z])|([0-9])|(.)){5,}|(.)+$/g, "$1$2$3$4$5").length; 
} 

function validatePwdStrong(value) { 
var pwd = { 
color: [&#39;#E6EAED&#39;, &#39;#AC0035&#39;, &#39;#FFCC33&#39;, &#39;#639BCC&#39;, &#39;#246626&#39;], 
text: [&#39;太短&#39;, &#39;弱&#39;, &#39;一般&#39;, &#39;很好&#39;, &#39;极佳&#39;] 
}; 
function colorInit() { 
$(&#39;pwdStrong_1&#39;).style.backgroundColor = pwd.color[0]; 
$(&#39;pwdStrong_2&#39;).style.backgroundColor = pwd.color[0]; 
$(&#39;pwdStrong_3&#39;).style.backgroundColor = pwd.color[0]; 
$(&#39;pwdStrong_4&#39;).style.backgroundColor = pwd.color[0]; 
} 
if (Evaluate(value) == 1) { 
colorInit(); 
$(&#39;pwdStrong_1&#39;).style.backgroundColor = pwd.color[1]; 
$(&#39;pwdStrong_text&#39;).innerHTML = pwd.text[1]; 
$(&#39;pwdStrong_text&#39;).style.color = pwd.color[1]; 
} 
else if (Evaluate(value) == 2) { 
colorInit(); 
$(&#39;pwdStrong_1&#39;).style.backgroundColor = pwd.color[2]; 
$(&#39;pwdStrong_2&#39;).style.backgroundColor = pwd.color[2]; 
$(&#39;pwdStrong_text&#39;).innerHTML = pwd.text[2]; 
$(&#39;pwdStrong_text&#39;).style.color = pwd.color[2]; 
} 
else if (Evaluate(value) == 3) { 
colorInit(); 
$(&#39;pwdStrong_1&#39;).style.backgroundColor = pwd.color[3]; 
$(&#39;pwdStrong_2&#39;).style.backgroundColor = pwd.color[3]; 
$(&#39;pwdStrong_3&#39;).style.backgroundColor = pwd.color[3]; 
$(&#39;pwdStrong_text&#39;).innerHTML = pwd.text[3]; 
$(&#39;pwdStrong_text&#39;).style.color = pwd.color[3]; 
} 
else if (Evaluate(value) == 4) { 
$(&#39;pwdStrong_1&#39;).style.backgroundColor = pwd.color[4]; 
$(&#39;pwdStrong_2&#39;).style.backgroundColor = pwd.color[4]; 
$(&#39;pwdStrong_3&#39;).style.backgroundColor = pwd.color[4]; 
$(&#39;pwdStrong_4&#39;).style.backgroundColor = pwd.color[4]; 
$(&#39;pwdStrong_text&#39;).innerHTML = pwd.text[4]; 
$(&#39;pwdStrong_text&#39;).style.color = pwd.color[4]; 
} 
}

//=================CSS文件================= 

body 
{ 
font: 13px 宋体; 
} 
/*密码验证提示CSS --------------------------------开始--------------------------------*/ 
#tipPosition 
{ 
width: 400px; 
height: 16px; 
line-height: 18px; 
padding: 2px 30px; 
} 
.tip 
{ 
background: #E6F2FF url(images/register_tip.png) no-repeat 10px center; 
border: 1px #0E5863 dashed; 
color: #0E5863; 
} 
.error 
{ 
background: #FBECDF url(images/register_error.png) no-repeat 10px center; 
border: 1px Red dashed; 
color: #6D3737; 
} 
.success 
{ 
background: #D6FCD2 url(images/register_success.png) no-repeat 10px center; 
border: 1px #2F5D36 dashed; 
color: #3D934A; 
} 
/*密码强度CSS --------------------------------开始--------------------------------*/ 
#pwdStrong_color 
{ 
width: 136px; 
height: 3px; 
border: 0px; 
border-collapse: collapse; 
border-spacing: 0; 
background: #E6EAED; 
margin-top: 5px; 
} 
#pwdStrong_color td 
{ 
padding: 0px; 
width: 44px; /*如不加td宽度,Google的Chrome不会正常显示*/ 
} 
#pwdStrong_text 
{ 
font: 12px 宋体; 
}

更多JS 密码强度验证(兼容IE,火狐,谷歌)相关文章请关注PHP中文网!

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