runxinzhi.com
首页
百度搜索
转载用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
相关阅读:
MTK 关闭耳机调至最大音量时,提示损伤听力
MTK LCM的添加
chmod chown
ubuntu14.04设置静态IP
MTK NTP和NITZ更新时间的问题
Rk3288 双屏异显单触摸
MTK 修改默认时区
MTK 屏幕旋转90度
MTK WIFI底部加入返回按钮
MTK 自定义按键添加广播
原文地址:https://www.cnblogs.com/EasyLive2006/p/658521.html
最新文章
Javascript的作用域
JavaScript--eval
JavaScript--序列化以及转义
JavaScript--函数
后台管理页面布局
菜单栏--Dom选择器
模态对话框和全选反选
Reactor模式详解
Reactor模式,或者叫反应器模式
Java之CountDownLatch使用
热门文章
Java NIO:IO与NIO的区别
说说自己对RESTful API的理解
RedHat Linux7.3 使用yum安装时报错,改用CentOS yum源
Schema中elementFormDefault="qualified"所起的作用
Eclipse使用心得与技巧
Eclipse快捷键 10个最有用的快捷键
Ant与Proguard集中
【玩转单片机系列001】 08接口双色LED显示屏驱动方式探索
Android学习笔记50:使用WebView控件浏览网页
无废话SharePoint入门教程一[SharePoint概述]
Copyright © 2020-2023
润新知