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 == "") {
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;
}
<form name="form1" action="">
输入密码:<input type="password" size="20" onKeyUp="pwStrength(this.value)" onBlur="pwStrength(this.value)" />
<br>密码强度:
<table width="200px" height="25" border="0" cellspacing="0" cellpadding="1" bordercolor="#cccccc" style=font-size:12px>
<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>
|= 是JavaScript中按位“或”赋值运算符 JavaScript中按位“或”赋值运算符是对变量值与表达式值执行按位“或”,并将结果赋给该变量。
使用方法:
result |= expression
其中:
result是任何变量。
expression是任何表达式。
JavaScript中按位“或”赋值运算符,使用该运算符和使用下面的语句是等效的:
result = result | expression
|= 运算符查看 result 和 expression 的二进制表示法的值,并执行按位“或”操作。
该操作的结果如下所示:
0101 (result)
1100 (expression)
----
1101 (输出)
任何时候,只要两个表达式中的其中一个的某位是 1,则结果的该位是 1。否则,结果的该位是 0。
>>> 运算符将 expression1 的位右移 expression2 中指定的位数。 用零填充右移后左边空出的位。 右移的位被丢弃。 例如:
var temp temp = -14 >>> 2
变量 temp 具有初始值 -14(二进制补码 11111111 11111111 11111111 11110010)。
其右移两位后,值等于 1073741820(即二进制的 00111111 11111111 11111111 11111100)。
javascript密码强度验证!的更多相关文章
- 这篇文章主要为大家详细介绍了jQuery密码强度验证控件使用详解的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
本文实例为大家分享了jQuery密码强度验证控件,供大家参考,具体内容如下 <html> <head> <meta http-equiv="Cont ...
- MySQL密码强度验证修改
MySQL5.6.6版本之后增加了密码强度验证插件validate_password,相关参数设置的较为严格. 影响的语句和函数有:create user,grant,set password,pas ...
- js实现密码强度验证
<html> <head> <meta http-equiv="content-type" content="text/html" ...
- 初学js正则表达式之密码强度验证
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- js正则表达式之密码强度验证
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- MySql取消密码强度验证功能
一.修改MySql配置文件(my.cnf)一般情况下,MySql的配置文件 my.cnf 会在 /etc/ 目录下,如果没有,可以使用以下命令查找位置: find / -name my.cnf 编辑 ...
- jquery实现密码强度检测
jquery实现密码强度验证 jquery实现密码强度验证 JS代码: $('#pass').keyup(function(e) { var strongRegex = new RegExp( ...
- 使用javascript对密码进行有密码强度提示的验证
好些网站的注册功能中,都有对密码进行验证并且还有强度提示.下面就来实现这种效果.密码强度说明:密码强度:弱——纯数字,纯字母,纯符号密码强度:中——数字,字母,符号任意两种的组合密码强度:强——数字, ...
- JS简单验证密码强度
<input type="password" id="password" value=""/><button id=&qu ...
随机推荐
- 使用一个封装的json删除方法
<!-- 前台js代码:其实现的目的:利用异步的封装方法实现增删改操作!--> <script type="text/javascript"> functi ...
- Dolphin for Android(v11.5.1[Jetpack:内置])
1. 下载的地址为“http://www.techspot.com/downloads/5927-dolphin-browser-for-android.html” ZC: 由于 Google Pla ...
- [转载] Linux下查看内存使用情况方法总结
原文: http://9iphp.com/linux/1247.html 强烈推荐 htop.
- linux学习笔记2-命令总结5
压缩解压命令 bzip2,gunzip,gzip,tar,zip 网络命令 ifconfig - 查看和配置网卡 lastlog - 检查某特定用户上次登录的时间 last - 列出目前和过去登入系统 ...
- go切片
本文实例讲述了GO语言数组和切片的用法.分享给大家供大家参考.具体分析如下: 一.数组 与其他大多数语言类似,Go语言的数组也是一个元素类型相同的定长的序列. (1)数组的创建. 数组有3种创建方式: ...
- [精品推荐]Android Studio插件整理
GOOD 现在Android的开发者基本上都使用Android Studio进行开发(如果你还在使用eclipse那也行,毕竟你乐意怎么样都行).使用好Android Studio插件能大量的减少我们 ...
- HTML JSP Servlet 的 相对路径 绝对路径
HTML 相对路径 - 没有最前面的 /: 相对于当前文件,和OS一样 绝对路径 - 前面带 / : 相对于 http://<host>:port/ Servlet 相对路径 - 相对于 ...
- openfire控制台登录不了的解决
不知道为什么,openfire服务器后台,发生几次密码都登录不上去的问题,密码肯定没错,第一次就是默认的用户名:admin,密码:admin,然,第三天,说我密码错误,后来重装软件才弄好, 然后又发生 ...
- eclipse 下的 merge 是如何实现的
1 我从eclipse里面新建一个workspace2 新建一个分支3 再新建另外一个分支4 回到原分支, 修改某一行,比如a.txt的85行5 提交git add commit6 切换到新分支7 修 ...
- virtualBox虚拟机安装与主机互访和实现上网配置
1.到官方网下载vitualBox虚拟机,目前最新版本5.0,并安装. https://www.virtualbox.org/ 2.下载安装CentOS系统安装文件 本文采用CentOS-6.5-i3 ...