zoukankan
html css js c++ java
转载用javascript实现评估用户输入密码的强度
<
script language
=
javascript
>
//
程序设计:环球万维 netInter.cn
//
本程序是环球万维原创程序,若需转载,请注明网址及出处,谢谢.
//
以上信息与文章正文是不可分割的一部分,所以如果您要转载本文章,您必须保留以上信息.
//
CharMode函数
//
测试某个字符是属于哪一类.
function
CharMode(iN)
{
if
(iN
>=
48
&&
iN
<=
57
)
//
数字
return
1
;
if
(iN
>=
65
&&
iN
<=
90
)
//
大写字母
return
2
;
if
(iN
>=
97
&&
iN
<=
122
)
//
小写
return
4
;
else
return
8
;
//
特殊字符
}
//
bitTotal函数
//
计算出当前密码当中一共有多少种模式
function
bitTotal(num)
{
modes
=
0
;
for
(i
=
0
;i
<
4
;i
++
)
{
if
(num
&
1
) modes
++
;
num
>>>=
1
;
}
return
modes;
}
//
checkStrong函数
//
返回密码的强度级别
function
checkStrong(sPW)
{
if
(sPW.length
<=
4
)
return
0
;
//
密码太短
Modes
=
0
;
for
(i
=
0
;i
<
sPW.length;i
++
)
{
//
测试每一个字符的类别并统计一共有多少种模式.
Modes
|=
CharMode(sPW.charCodeAt(i));
}
return
bitTotal(Modes);
}
//
pwStrength函数
//
当用户放开键盘或密码输入框失去焦点时,根据不同的级别显示不同的颜色
function
pwStrength(pwd)
{
O_color
=
"
#eeeeee
"
;
L_color
=
"
#FF0000
"
;
M_color
=
"
#FF9900
"
;
H_color
=
"
#33CC00
"
;
if
(pwd
==
null
||
pwd
==
'')
{
Lcolor
=
Mcolor
=
Hcolor
=
O_color;
}
else
{
S_level
=
checkStrong(pwd);
switch
(S_level)
{
case
0
:
Lcolor
=
Mcolor
=
Hcolor
=
O_color;
case
1
:
Lcolor
=
L_color;
Mcolor
=
Hcolor
=
O_color;
break
;
case
2
:
Lcolor
=
Mcolor
=
M_color;
Hcolor
=
O_color;
break
;
default
:
Lcolor
=
Mcolor
=
Hcolor
=
H_color;
}
}
document.getElementById(
"
strength_L
"
).style.background
=
Lcolor;
document.getElementById(
"
strength_M
"
).style.background
=
Mcolor;
document.getElementById(
"
strength_H
"
).style.background
=
Hcolor;
return
;
}
</
script
>
<
form name
=
form1 action
=
""
>
输入密码:
<
input type
=
password size
=
10
onKeyUp
=
pwStrength(
this
.value) onBlur
=
pwStrength(
this
.value)
>
<
br
>
密码强度:
<
table width
=
"
217
"
border
=
"
1
"
cellspacing
=
"
0
"
cellpadding
=
"
1
"
bordercolor
=
"
#cccccc
"
height
=
"
23
"
style
=
'display:inline'
>
<
tr align
=
"
center
"
bgcolor
=
"
#eeeeee
"
>
<
td width
=
"
33%
"
id
=
"
strength_L
"
>
弱
</
td
>
<
td width
=
"
33%
"
id
=
"
strength_M
"
>
中
</
td
>
<
td width
=
"
33%
"
id
=
"
strength_H
"
>
强
</
td
>
</
tr
>
</
table
>
</
form
>
KidYang
查看全文
相关阅读:
Sampling Distribution of the Sample Mean|Central Limit Theorem
OS L2-3: Process Creation and Operations
c++函数重载、内联函数、类、友元
命名空间及异常处理
C++继承与多态,代码复用之泛型和模板
ORB_GMS图像对齐
ORB对齐
[转]OpenCV中ORB特征点检测和匹配简单用法
[转]OpenCV学习笔记】之鼠标的调用
[转]OpenCV—Mat类
原文地址:https://www.cnblogs.com/EasyLive2006/p/658521.html
最新文章
【杭电】[3038]How Many Answers Are Wrong
谷歌Android各版本的代号变迁
斯坦福大学公开课:量子力学
斯坦福大学公开课:量子力学
[转]量子力学与心灵的探讨
[转]量子力学与心灵的探讨
MIUI V5更新到4.5.9之后的一些字体不能用的问题的对策
MIUI V5更新到4.5.9之后的一些字体不能用的问题的对策
[凯立德]2014全分辨率C-Car 4.0机车C2610版完美懒人包
[凯立德]2014全分辨率C-Car 4.0机车C2610版完美懒人包
热门文章
CompTIA Strata认证相关信息大全
super.getClass()陷阱
Hypothesis Tests for One Population Mean When σ Is Known
P-Value
Critical-Value|Critical-Value Approach to Hypothesis Testing
Null Hypotheses| Alternative Hypotheses|Hypothesis Test|Significance Level|two tailed |one tailed|
nonparametric method|One-Mean t-Interval Procedure|
Margin of Error|sample size and E
confidence intervals and precision|The One-Mean z-Interval Procedure|When to Use the One-Mean z-Interval Procedure
Point Estimate|unbiased estimator|Confidence-Interval Estimate
Copyright © 2011-2022 走看看