jQuery实用密码强度检测


Posted in Javascript onMarch 02, 2017

JQ实用密码强度检测

通过正则来判断验证密码强弱并通过替换提示图片进行显示。

素材图片,请自取:

jQuery实用密码强度检测jQuery实用密码强度检测

html源码:

<table style="width:320px;margin:40px auto;"> 
 <tr> 
  <th>密码</th> 
  <td><span class="tbl-txt"><input id="pass" class="input-style" size="30" maxlength="30" name="pass" type="text" /></span></td> 
 </tr> 
 <tr>  
  <th></th>   
  <td id="level" class="pw-strength">    
   <div class="pw-bar"></div> 
   <div class="pw-bar-on"></div> 
   <div class="pw-txt"> 
   <span>弱</span> 
   <span>中</span> 
   <span>强</span> 
   </div> 
  </td>  
 </tr> 
</table>

css源码:

.tbl-txt{font-size:14px;} 
  .tbl-txt input{padding:0 5px; height:22px; line-height:22px; margin-bottom:6px;} 
  .pw-strength {clear: both;position: relative;top: 8px;width: 180px;} 
  .pw-bar{background: url(images/pwd-1.png) no-repeat; position:relative; top:1px;height: 14px;overflow: hidden;width: 179px;} 
  .pw-bar-on{background: url(images/pwd-2.png) no-repeat; width:0px; height:14px;position: absolute;top: 1px;left: 2px;transition: width .5s ease-in;-moz-transition: width .5s ease-in;-webkit-transition: width .5s ease-in;-o-transition: width .5s ease-in;} 
  .pw-weak .pw-defule{ width:0px;} 
  .pw-weak .pw-bar-on {width: 60px;} 
  .pw-medium .pw-bar-on {width: 120px;} 
  .pw-strong .pw-bar-on {width: 179px;} 
  .pw-txt {padding-top: 2px;width: 180px;overflow: hidden;} 
  .pw-txt span {color: #707070;float: left;font-size: 12px;text-align: center;width: 58px;}

javascript源码:

$(function(){ 
 $('#pass').keyup(function () { 
  var strongRegex = new RegExp("^(?=.{8,})(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])(?=.*\\W).*$", "g"); 
  var mediumRegex = new RegExp("^(?=.{7,})(((?=.*[A-Z])(?=.*[a-z]))|((?=.*[A-Z])(?=.*[0-9]))|((?=.*[a-z])(?=.*[0-9]))).*$", "g"); 
  var enoughRegex = new RegExp("(?=.{6,}).*", "g"); 
  
  if (false == enoughRegex.test($(this).val())) { 
   $('#level').removeClass('pw-weak'); 
   $('#level').removeClass('pw-medium'); 
   $('#level').removeClass('pw-strong'); 
   $('#level').addClass(' pw-defule'); 
    //密码小于六位的时候,密码强度图片都为灰色 
  } 
  else if (strongRegex.test($(this).val())) { 
   $('#level').removeClass('pw-weak'); 
   $('#level').removeClass('pw-medium'); 
   $('#level').removeClass('pw-strong'); 
   $('#level').addClass(' pw-strong'); 
    //密码为八位及以上并且字母数字特殊字符三项都包括,强度最强 
  } 
  else if (mediumRegex.test($(this).val())) { 
   $('#level').removeClass('pw-weak'); 
   $('#level').removeClass('pw-medium'); 
   $('#level').removeClass('pw-strong'); 
   $('#level').addClass(' pw-medium'); 
    //密码为七位及以上并且字母、数字、特殊字符三项中有两项,强度是中等 
  } 
  else { 
   $('#level').removeClass('pw-weak'); 
   $('#level').removeClass('pw-medium'); 
   $('#level').removeClass('pw-strong'); 
   $('#level').addClass('pw-weak'); 
    //如果密码为6为及以下,就算字母、数字、特殊字符三项都包括,强度也是弱的 
  } 
  return true; 
 }); 
})

根据上述正则最终效果图如下:

jQuery实用密码强度检测

jQuery实用密码强度检测

jQuery实用密码强度检测

jQuery实用密码强度检测

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
统计jQuery中各字符串出现次数的工具
May 03 Javascript
解析DHTML,JavaScript,DOM,BOM以及WEB标准的描述
Jun 19 Javascript
jQuery图片轮播的具体实现
Sep 11 Javascript
Array 重排序方法和操作方法的简单实例
Jan 24 Javascript
浅谈js中test()函数在正则中的使用
Aug 19 Javascript
jQuery中ztree 点击文本框弹出下拉框的实例代码
Feb 05 Javascript
Angular2 Service实现简单音乐播放器服务
Feb 24 Javascript
JS实现队列的先进先出功能示例
May 10 Javascript
微信小程序实现预览图片功能
Oct 22 Javascript
JavaScript设计模式之观察者模式实例详解
Jan 16 Javascript
vant picker+popup 自定义三级联动案例
Nov 04 Javascript
浅谈JavaScript浅拷贝和深拷贝
Nov 07 Javascript
通过npm引用的vue组件使用详解
Mar 02 #Javascript
完美解决spring websocket自动断开连接再创建引发的问题
Mar 02 #Javascript
vue-dialog的弹出层组件
May 25 #Javascript
在node.js中怎么屏蔽掉favicon.ico的请求
Mar 01 #Javascript
基于Bootstrap的网页设计实例
Mar 01 #Javascript
JS中的作用域链
Mar 01 #Javascript
javascript html5轻松实现拖动功能
Mar 01 #Javascript
You might like
PHP获取网卡地址的代码
2008/04/09 PHP
PHP常用技术文之文件操作和目录操作总结
2014/09/27 PHP
Yii核心验证器api详解
2016/11/23 PHP
一个javascript参数的小问题
2008/03/02 Javascript
jquery 图片Silhouette Fadeins渐显效果
2010/02/07 Javascript
js 异步处理进度条
2010/04/01 Javascript
初学js插入节点appendChild insertBefore使用方法
2011/07/04 Javascript
Eval and new funciton not the same thing
2012/12/27 Javascript
javascript的解析执行顺序在各个浏览器中的不同
2014/03/17 Javascript
jquery实现人性化的有选择性禁用鼠标右键
2014/06/30 Javascript
Jquery 实现grid绑定模板
2015/01/28 Javascript
jQuery控制元素显示、隐藏、切换、滑动的方法总结
2015/04/16 Javascript
three.js 入门案例详解
2018/01/23 Javascript
p5.js入门教程之鼠标交互的示例
2018/03/16 Javascript
使用Vue制作图片轮播组件思路详解
2018/03/21 Javascript
vue中子组件向父组件传递数据的实例代码(实现加减功能)
2018/04/20 Javascript
vue项目设置scrollTop不起作用(总结)
2018/12/21 Javascript
实用的Vue开发技巧
2019/05/30 Javascript
一文秒懂nodejs中的异步编程
2021/01/28 NodeJs
python概率计算器实例分析
2015/03/25 Python
浅析Python中的join()方法的使用
2015/05/19 Python
对pandas的dataframe绘图并保存的实现方法
2017/08/05 Python
django模板语法学习之include示例详解
2017/12/17 Python
python类的方法属性与方法属性的动态绑定代码详解
2017/12/27 Python
python 快速把超大txt文件转存为csv的实例
2018/10/26 Python
matplotlib事件处理基础(事件绑定、事件属性)
2021/02/03 Python
Oracle中delete,truncate和drop的区别
2016/05/05 面试题
.net开发工程师面试题
2014/02/25 面试题
企业趣味活动方案
2014/08/21 职场文书
代理人委托书
2014/09/16 职场文书
常务副县长“四风”个人对照检查材料思想汇报
2014/10/02 职场文书
单身申明具结书
2015/02/26 职场文书
不同意离婚代理词
2015/05/23 职场文书
利用Python+OpenCV三步去除水印
2021/05/28 Python
Python实现双向链表
2022/05/25 Python
html5+实现plus.io进行拍照和图片等获取
2022/06/01 HTML / CSS