<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<script type="text/javascript"> 
//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==''){ 
//不用var声明变量连=号连接赋值
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>

</head>

<body>
<form name=form1 action="" > 
输入密码:<input type="password" size="20" 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>
</body>
</html>

JS脚本检查密码强度的更多相关文章

  1. js动态判断密码强度&&实用的 jQuery 代码片段

    // 网上拷贝的代码,效果不太好需要自己调整<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" &q ...

  2. JS正则检测密码强度

    今天遇到个需求,使用JS检测密码强度:密码长度最短为8,必须同时包含字母.数字.特殊符号. 代码如下: /*         * 检测密码复杂度         */         function ...

  3. JS简单验证密码强度

    <input type="password" id="password" value=""/><button id=&qu ...

  4. 初学js正则表达式之密码强度验证

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  5. js正则表达式之密码强度验证

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  6. 密码强度的js插件(完成)

    效果如下图: 低:

  7. C++实现密码强度测试

    最近在博客中看到许多用js写的密码强度检测,我觉得挺有意思的,所以呢我打算自己也写个来玩玩,最可悲的是我还没学js,当然这不重要,所以呢打算用C++来写一个密码强度检测,这里我来给大家说说用JS写的和 ...

  8. js判断密码强度

    html代码: <form name="form1" action=""> 密码:<input type="password&quo ...

  9. js 检验密码强度

    html 代码如下: <!DOCTYPE HTML> <html lang="en"> <head> <meta charset=&quo ...

随机推荐

  1. Java类加载原理解析

    详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt229 2       Java虚拟机类加载器结构简述 2.1    JVM三 ...

  2. html标签缺省(自带)样式大全

    html标签默认样式整理 作者:佚名  来源:互联网 时间:07-30 16:54:48 文为大家整理了html标签默认样式属性及浏览器默认样式等等,喜欢css布局的朋友们可以学下,希望对大家有所帮助 ...

  3. 转:【Java并发编程】之十:使用wait/notify/notifyAll实现线程间通信的几点重要说明

    转载请注明出处:http://blog.csdn.net/ns_code/article/details/17225469    在Java中,可以通过配合调用Object对象的wait()方法和no ...

  4. 团队作业八—第二次团队冲刺(Beta版本) 第 1 天

    一.每个人的工作 (1) 昨天已完成的工作 由于是才刚开始冲刺,所以没有昨天的工作 (2) 今天计划完成的工作: 对界面的优化和一些细节的完善 (3) 工作中遇到的困难: 工作中出现了意见不一的情况 ...

  5. 团队作业8——第二次项目冲刺(Beta阶段)(冲刺计划)

    Beta阶段冲刺计划 Alpha冲刺暂时告一段落,项目现在也有个了大体框架,当然还是有很多漏洞,在接下来的Beta冲刺中尽量完善,希望最后能有一个好的结果. 新成员介绍 何跃斌:掌握java.c的基本 ...

  6. python3中的一些小改动

    Python 3.3中使用print是必须要括号因为在python3以上的版本中print不再是一条命令而是一个函数了.

  7. Markdown编辑后

    一个例子: 例子开始 1. 本章学习总结 今天主要学习了三个知识点 封装 继承 多态 2. 书面作业 Q1. java HelloWorld命令中,HelloWorld这个参数是什么含义? 今天学了一 ...

  8. Nim函数调用的几种形

    Nim函数调用的几种形式 Nim 转载条件:如果你需要转载本文,你需要做到完整转载本文所有的内容,不得删改文内的作者名字与链接.否则拒绝转载. 关于nim的例行介绍: Nim 是一门静态编译型的系统级 ...

  9. Apache2.4 + Tomcat7 负载均衡配置

    一.配置tomcat 多启动 1.下载免安装版 tomcat7 http://mirror.bit.edu.cn/apache/tomcat/tomcat-7/v7.0.81/bin/apache-t ...

  10. MongoDB中的映射,限制记录和记录拼排序 文档的插入查询更新删除操作

    映射 在 MongoDB 中,映射(Projection)指的是只选择文档中的必要数据,而非全部数据.如果文档有 5 个字段,而你只需要显示 3 个,则只需选择 3 个字段即可. find() 方法 ...