JS 密码强度验证(兼容IE,火狐,谷歌)


Posted in Javascript onMarch 15, 2010

大概样式: 

JS 密码强度验证(兼容IE,火狐,谷歌)
源码:

//=================HTML页面================= 
<body onload="InitCss();"> 
<form> 
<div> 
<table> 
<tr> 
<td> 
密码: 
</td> 
<td> 
<input id="txtPassword" type="password" style="width: 130px;" maxlength="16" onfocus="InitCss();" 
onblur="ValidateInput('password',this.value)" onkeydown="validatePwdStrong(this.value);" /> 
</td> 
<td> 
<div id="tipPosition"> 
</div> 
</td> 
</tr> 
<tr> 
<td> 
</td> 
<td> 
<table id="pwdStrong_color"> 
<tr> 
<td id="pwdStrong_1"> 
</td> 
<td id="pwdStrong_2"> 
</td> 
<td id="pwdStrong_3"> 
</td> 
<td id="pwdStrong_4"> 
</td> 
</tr> 
</table> 
</td> 
<td> 
<div id="pwdStrong_text"> 
</div> 
</td> 
</tr> 
</table> 
</div> 
</form> 
</body>

JS文件
//使用$替换document.getElementById函数 
var $ = function(v) { return document.getElementById(v); } /******************************************************验证用户输入******************************************************/ 
function ValidateInput(element, value) { 
//验证密码 
if (element == "password") { 
if (value.toString().length < 6) { 
$('tipPosition').className = 'error'; 
$('tipPosition').innerHTML = "密码设置错误。密码长度过小。"; 
return; 
} 
else { 
$('tipPosition').className = 'success'; 
$('tipPosition').innerHTML = "填写正确。"; 
} 
} 
} 
/*================================密码验证JS =========== Begin=======================================*/ 
//密码初始化的样式 
function InitCss() { 
$('tipPosition').className = 'tip'; 
$('tipPosition').innerHTML = "最小长度:6。 最大长度:16。"; 
} 
/*================================密码强度 ===========Begin=======================================*/ 
function Evaluate(word) { 
return word.replace(/^(?:([a-z])|([A-Z])|([0-9])|(.)){5,}|(.)+$/g, "$1$2$3$4$5").length; 
} 
function validatePwdStrong(value) { 
var pwd = { 
color: ['#E6EAED', '#AC0035', '#FFCC33', '#639BCC', '#246626'], 
text: ['太短', '弱', '一般', '很好', '极佳'] 
}; 
function colorInit() { 
$('pwdStrong_1').style.backgroundColor = pwd.color[0]; 
$('pwdStrong_2').style.backgroundColor = pwd.color[0]; 
$('pwdStrong_3').style.backgroundColor = pwd.color[0]; 
$('pwdStrong_4').style.backgroundColor = pwd.color[0]; 
} 
if (Evaluate(value) == 1) { 
colorInit(); 
$('pwdStrong_1').style.backgroundColor = pwd.color[1]; 
$('pwdStrong_text').innerHTML = pwd.text[1]; 
$('pwdStrong_text').style.color = pwd.color[1]; 
} 
else if (Evaluate(value) == 2) { 
colorInit(); 
$('pwdStrong_1').style.backgroundColor = pwd.color[2]; 
$('pwdStrong_2').style.backgroundColor = pwd.color[2]; 
$('pwdStrong_text').innerHTML = pwd.text[2]; 
$('pwdStrong_text').style.color = pwd.color[2]; 
} 
else if (Evaluate(value) == 3) { 
colorInit(); 
$('pwdStrong_1').style.backgroundColor = pwd.color[3]; 
$('pwdStrong_2').style.backgroundColor = pwd.color[3]; 
$('pwdStrong_3').style.backgroundColor = pwd.color[3]; 
$('pwdStrong_text').innerHTML = pwd.text[3]; 
$('pwdStrong_text').style.color = pwd.color[3]; 
} 
else if (Evaluate(value) == 4) { 
$('pwdStrong_1').style.backgroundColor = pwd.color[4]; 
$('pwdStrong_2').style.backgroundColor = pwd.color[4]; 
$('pwdStrong_3').style.backgroundColor = pwd.color[4]; 
$('pwdStrong_4').style.backgroundColor = pwd.color[4]; 
$('pwdStrong_text').innerHTML = pwd.text[4]; 
$('pwdStrong_text').style.color = pwd.color[4]; 
} 
}

//=================CSS文件=================

body 
{ 
font: 13px 宋体; 
} 
/*密码验证提示CSS --------------------------------开始--------------------------------*/ 
#tipPosition 
{ 
width: 400px; 
height: 16px; 
line-height: 18px; 
padding: 2px 30px; 
} 
.tip 
{ 
background: #E6F2FF url(images/register_tip.png) no-repeat 10px center; 
border: 1px #0E5863 dashed; 
color: #0E5863; 
} 
.error 
{ 
background: #FBECDF url(images/register_error.png) no-repeat 10px center; 
border: 1px Red dashed; 
color: #6D3737; 
} 
.success 
{ 
background: #D6FCD2 url(images/register_success.png) no-repeat 10px center; 
border: 1px #2F5D36 dashed; 
color: #3D934A; 
} 
/*密码强度CSS --------------------------------开始--------------------------------*/ 
#pwdStrong_color 
{ 
width: 136px; 
height: 3px; 
border: 0px; 
border-collapse: collapse; 
border-spacing: 0; 
background: #E6EAED; 
margin-top: 5px; 
} 
#pwdStrong_color td 
{ 
padding: 0px; 
width: 44px; /*如不加td宽度,Google的Chrome不会正常显示*/ 
} 
#pwdStrong_text 
{ 
font: 12px 宋体; 
}
Javascript 相关文章推荐
基于jQuery的JavaScript模版引擎JsRender使用指南
Dec 29 Javascript
JavaScript基础函数整理汇总
Jan 30 Javascript
详解AngularJS中的表格使用
Jun 16 Javascript
BootStrap实现树形目录组件代码详解
Jun 21 Javascript
BootStrap3使用错误记录及解决办法
Dec 22 Javascript
php 修改密码实现代码
May 24 Javascript
JavaScript中in和hasOwnProperty区别详解
Aug 04 Javascript
深入理解 webpack 文件打包机制(小结)
Jan 08 Javascript
深入浅析vue-cli@3.0 使用及配置说明
May 08 Javascript
JS中实现浅拷贝和深拷贝的代码详解
Jun 05 Javascript
JS中比Switch...Case更优雅的多条件判断写法
Sep 05 Javascript
vue cli3 调用百度翻译API翻译页面的实现示例
Sep 13 Javascript
javascript css styleFloat和cssFloat
Mar 15 #Javascript
javascript 嵌套的函数(作用域链)
Mar 15 #Javascript
JavaScript 嵌套函数指向this对象错误的解决方法
Mar 15 #Javascript
JQuery 常用操作代码
Mar 14 #Javascript
Jquery Ajax学习实例 向页面发出请求,返回XML格式数据
Mar 14 #Javascript
Jquery cookie操作代码
Mar 14 #Javascript
javascript 解决表单仍然提交即使监听处理函数返回false
Mar 14 #Javascript
You might like
丧钟首部独立剧集《丧钟:骑士与龙》北美正式开播,场面血腥
2020/04/09 欧美动漫
php mssql 日期出现中文字符的解决方法
2009/03/10 PHP
PHP 删除文件与文件夹操作 unlink()与rmdir()这两个函数的使用
2011/07/17 PHP
eAccelerator的安装与使用详解
2013/06/13 PHP
thinkphp模板继承实例简述
2014/11/26 PHP
php解析字符串里所有URL地址的方法
2015/04/03 PHP
PHP学习笔记(三):数据类型转换与常量介绍
2015/04/17 PHP
在网页中控制wmplayer播放器
2006/07/01 Javascript
Add Formatted Text to a Word Document
2007/06/15 Javascript
JQuery 插件制作实践 xMarquee插件V1.0
2010/04/02 Javascript
JavaScript常用全局属性与方法记录积累
2013/07/03 Javascript
禁用页面部分JavaScript方法的具体实现
2013/07/31 Javascript
JavaScript中Function详解
2015/02/27 Javascript
JavaScript程序中的流程控制语句用法总结
2016/05/23 Javascript
BootStrap Tooltip插件源码解析
2016/12/27 Javascript
js实现倒计时关键代码
2017/05/05 Javascript
Mongoose中document与object的区别示例详解
2017/09/18 Javascript
vue2.0 循环遍历加载不同图片的方法
2018/03/06 Javascript
微信小程序url传参写变量的方法
2018/08/09 Javascript
简单了解Ajax表单序列化的实现方法
2019/06/14 Javascript
axios异步提交表单数据的几种方法
2019/08/11 Javascript
Python中DJANGO简单测试实例
2015/05/11 Python
Python及PyCharm下载与安装教程
2017/11/18 Python
对python numpy数组中冒号的使用方法详解
2018/04/17 Python
Python json模块dumps、loads操作示例
2018/09/06 Python
nginx搭建基于python的web环境的实现步骤
2020/01/03 Python
python re模块匹配贪婪和非贪婪模式详解
2020/02/11 Python
解决pymysql cursor.fetchall() 获取不到数据的问题
2020/05/15 Python
使用CSS3滤镜的filter:blur属性制作毛玻璃模糊效果的方法
2016/07/08 HTML / CSS
HTML5调用手机摄像头拍照的实现思路及代码
2014/06/15 HTML / CSS
如何用SQL语句进行模糊查找
2015/09/25 面试题
应用心理学个人求职信范文
2013/12/11 职场文书
致铅球运动员广播稿精选
2014/01/12 职场文书
学校查摆问题整改措施
2014/09/28 职场文书
2015暑期社会实践个人总结
2015/07/13 职场文书
php TP5框架生成二维码链接
2021/04/01 PHP