用于判断用户注册时,密码强度的JS代码
2023-06-13 09:14:07 时间
<scriptlanguage=javascript>
//CharMode函数
//测试某个字符是属于哪一类.
functionCharMode(iN){
if(iN>=48&&iN<=57)//数字
return1;
if(iN>=65&&iN<=90)//大写字母
return2;
if(iN>=97&&iN<=122)//小写
return4;
else
return8;//特殊字符
}
//bitTotal函数
//计算出当前密码当中一共有多少种模式
functionbitTotal(num){
modes=0;
for(i=0;i<4;i++){
if(num&1)modes++;
num>>>=1;
}
returnmodes;
}
//checkStrong函数
//返回密码的强度级别
functioncheckStrong(sPW){
if(sPW.length<=4)
return0;//密码太短
Modes=0;
for(i=0;i<sPW.length;i++){
//测试每一个字符的类别并统计一共有多少种模式.
Modes|=CharMode(sPW.charCodeAt(i));
}
returnbitTotal(Modes);
}
//pwStrength函数
//当用户放开键盘或密码输入框失去焦点时,根据不同的级别显示不同的颜色
functionpwStrength(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){
case0:
Lcolor=Mcolor=Hcolor=O_color;
case1:
Lcolor=L_color;
Mcolor=Hcolor=O_color;
break;
case2:
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>
<formname=form1action="">
输入密码:
<inputtype=passwordsize=10onKeyUp=pwStrength(this.value)
onBlur=pwStrength(this.value)>
<br>密码强度:
<tablewidth="217"border="1"cellspacing="0"cellpadding="1"bordercolor="#cccccc"
height="23"style="display:inline">
<tralign="center"bgcolor="#eeeeee">
<tdwidth="33%"id="strength_L">弱</td>
<tdwidth="33%"id="strength_M">中</td>
<tdwidth="33%"id="strength_H">强</td>
</tr>
</table>
</form>
//CharMode函数
//测试某个字符是属于哪一类.
functionCharMode(iN){
if(iN>=48&&iN<=57)//数字
return1;
if(iN>=65&&iN<=90)//大写字母
return2;
if(iN>=97&&iN<=122)//小写
return4;
else
return8;//特殊字符
}
//bitTotal函数
//计算出当前密码当中一共有多少种模式
functionbitTotal(num){
modes=0;
for(i=0;i<4;i++){
if(num&1)modes++;
num>>>=1;
}
returnmodes;
}
//checkStrong函数
//返回密码的强度级别
functioncheckStrong(sPW){
if(sPW.length<=4)
return0;//密码太短
Modes=0;
for(i=0;i<sPW.length;i++){
//测试每一个字符的类别并统计一共有多少种模式.
Modes|=CharMode(sPW.charCodeAt(i));
}
returnbitTotal(Modes);
}
//pwStrength函数
//当用户放开键盘或密码输入框失去焦点时,根据不同的级别显示不同的颜色
functionpwStrength(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){
case0:
Lcolor=Mcolor=Hcolor=O_color;
case1:
Lcolor=L_color;
Mcolor=Hcolor=O_color;
break;
case2:
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>
<formname=form1action="">
输入密码:
<inputtype=passwordsize=10onKeyUp=pwStrength(this.value)
onBlur=pwStrength(this.value)>
<br>密码强度:
<tablewidth="217"border="1"cellspacing="0"cellpadding="1"bordercolor="#cccccc"
height="23"style="display:inline">
<tralign="center"bgcolor="#eeeeee">
<tdwidth="33%"id="strength_L">弱</td>
<tdwidth="33%"id="strength_M">中</td>
<tdwidth="33%"id="strength_H">强</td>
</tr>
</table>
</form>
相关文章
- js数组遍历的方法_图的遍历及应用实验总结
- js匿名函数和立即执行函数[通俗易懂]
- 使用 Dapr JS SDK 让 Nest.js 集成 Dapr(微软开源的分布式应用程序运行时)
- js的sort排序方法_sort对象排序
- 初识js中的闭包_Js闭包中变量理解
- 【CSS动效实战(纯CSS与JS动效)】03 精美手风琴侧边栏完整示例教程 示例1
- JS设置定时器_js设置定时器
- JS浏览器环境下各种实用API记录
- JS该写分号嘛? - wuuconix's blog
- js实现:输入密码才能打开网页。js实现密码保护的网页。
- 检测设备平台,操作系统,方向 Javascript 库:Device.js
- JS动态引入js、CSS动态创建script/link/style标签详解编程语言
- 使用JS实现Redis数据读取(js读取redis)
- 数据JS技术实现实时获取Oracle数据(js实时获取oracle)
- JS实时链接Oracle让数据库访问更便捷(js实时连接oracle)
- JS将文件传输至MySQL数据库(.js传文件至mysql)
- 区分JS中的undefined,null,"",0和false
- js自动滑动+鼠标滑动区域
- JS类定义原型方法的两种实现的区别评论很多
- 一个可以显示当前年份以及生肖的js代码
- 输入密码检测大写是否锁定js实现代码
- Jquery和JS用外部变量获取Ajax返回的参数值的方法实例(超简单)
- 使用js设置url参数
- 关于include标签导致js路径找不到的问题分析及解决
- js加密解密字符串可自定义密码因子