四级密码强度检测

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
 <head>
  <title> 密码强度检测 </title>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  <style type="text/css">
	input{float: left; font-size: 14px; width: 250px; height: 25px; border: 1px solid #ccc; padding-left: 10px;}
	#tips{float: left; font-size: 12px; width: 400px; height: 25px; margin: 4px 0 0 20px;}
	#tips span{float: left; width: 40px; height: 20px; color: #fff; overflow:hidden; margin-right: 10px; background: #D7D9DD; line-height:20px; text-align: center; }
	#tips .s1{background: #F45A68;}/*红色*/
	#tips .s2{background: #fc0;}/*橙色*/
	#tips .s3{background: #cc0;}/*黄色*/
	#tips .s4{background: #14B12F;}/*绿色*/
  </style>
 </head>
 <body>
  <input type="text" id="password" value="" maxlength="16" />
  <div id="tips">
	<span>弱</span>
	<span>中</span>
	<span>强</span>
	<span>很强</span>
  </div>
</body>
  <script type="text/javascript">
	var password = document.getElementById("password"); //获取文本框的对象
    //var value = password.value; //获取用户在文本框里面填写的值
	//获取所有的span标签 返回值是一个数组
	var spanDoms = document.getElementsByTagName("span");

	password.onkeyup = function(){
		//获取用户输入的密码,然后判断其强度 返回0 或者 1 2 3 4
		var index = checkPassWord(this.value);
		for(var i = 0; i <spanDoms.length; i++){
			spanDoms[i].className = "";//清空span标签所有的class样式
			if(index){//0 代表false 其余代表true
				spanDoms[index-1].className = "s" + index ;
			}
		}
	}

	//校验密码强度
	function checkPassWord(value){
		// 0: 表示第一个级别  1:表示第二个级别  2:表示第三个级别
		// 3: 表示第四个级别  4:表示第五个级别
        var modes = 0;
		if(value.length < 6){//最初级别
			return modes;
		}

		if(/\d/.test(value)){//如果用户输入的密码 包含了数字
			modes++;
		}

		if(/[a-z]/.test(value)){//如果用户输入的密码 包含了小写的a到z
			modes++;
		}

		if(/[A-Z]/.test(value)){//如果用户输入的密码 包含了大写的A到Z
			modes++;
		}

		if(/\W/.test(value)){//如果是非数字 字母 下划线
			modes++;
		}

		switch(modes){
			case 1 :
				return 1;
				break;
			case 2 :
				return 2;
				break;
			case 3 :
				return 3;
				break;
			case 4 :
				return 4;
				break;
		}

	}
  </script>
</html>

说明: 这里实现的功能主要是,输入密码的时候,一边输一边检测,有四个安全级别,当输入的密码符合某个级别的规则时,该级别的标志条就会高亮变色。

下面是测试的情况,(这里为了能看到效果,所以把type=“password”故意改成type=“text”),至于检测中级别的规则,读者可以自己根据需要自行修改,主要是js正则表达式的修改。另外,当把最后一个图片的输入内容,逐步地删除,直到只剩第一个图片的输入内容,这一过程中,效果就是下面的 从下到上变化了

时间: 2024-10-24 22:32:59

四级密码强度检测的相关文章

CSS之密码强度检测

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>用户密码强度检测</title>

密码强度检测效果

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Typ

基于规则评分的密码强度检测算法分析及实现(JavaScript)

简言 用正则表达式做用户密码强度的通过性判定,过于简单粗暴,不但用户体验差,而且用户帐号安全性也差.那么如何准确评价用户密码的强度,保护用户帐号安全呢?本文分析介绍了几种基于规则评分的密码强度检测算法,并给出了相应的演示程序.大家可以根据自己项目安全性需要,做最适合于自己的方案选择. 1 方案1 (简单) 方案1算法通过密码构成分析,结合权重分派,统计得出密码强度得分.得分越高,表示密码强度越大,也就越安全.方案1算法思想简单,实现容易. 1.1 方案1评分标准 一.密码长度: 5 分: 小于等

jquery密码强度检测

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-

jquery实现密码强度检测

jquery实现密码强度验证 jquery实现密码强度验证 JS代码: $('#pass').keyup(function(e) { var strongRegex = new RegExp("^(?=.{8,})(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])(?=.*\\W).*$", "g"); var mediumRegex = new RegExp("^(?=.{7,})(((?=.*[A-Z])(?=.*[a-z]))|((?

JS密码强度检测

1 //校验密码强度---沒有匹配到以下級別就提示 2 function checkPassWord(value){ 3 // 0: 表示第一个级别 1:表示第二个级别 2:表示第三个级别 4 // 3: 表示第四个级别 4:表示第五个级别 5 var arr=[],array=[1,2,3,4]; 6 if(value.length < 6){//最初级别 7 return 0; 8 } 9 if(/\d/.test(value)){//如果用户输入的密码 包含了数字 10 arr.push(

js密码强度

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-

js动态判断密码强度

// 网上拷贝的代码,效果不太好需要自己调整<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta htt

C++实现密码强度测试

最近在博客中看到许多用js写的密码强度检测,我觉得挺有意思的,所以呢我打算自己也写个来玩玩,最可悲的是我还没学js,当然这不重要,所以呢打算用C++来写一个密码强度检测,这里我来给大家说说用JS写的和用C++写的不同之处 JS写的密码强度检测:当你输入一串>=6 位数的时候 他后面会自动弹出密码的强度 ,还有你再继续输入然后他后面的密码强度会更换 (当然我也尝试解决过这个问题,写出来就一直只能输入6位数,由于我技术有限,如果大家自己能写出来的话可以去试试): C++写的密码强度检测:当你输入一串