您现在的位置:首页 >> IT技能 >> 网页设计频道 >> 网页设计资料列表 >> 以用户为中心的设计 >> 使用表单密码强度提示改善用户体验

使用表单密码强度提示改善用户体验

发表时间:2008-04-10  编辑:江昌华  来源:  网络
编者按:类似效果:Live.com中的修改密码功能    使用方法:  第一步:保存图片  第二步:根据您的需要修改js文件中该图片地址。如下所示:以下是引用片段:var bIm...
很多网站在访问者注册用户或更改密码时,根据用户输入的密码来检测密码的安全等级,提醒用户提高帐号的安全性。这样的设计为用户着想,对增强用户体验有很大的帮助,我们一起来看看是如何实现的。

  

  类似效果:Live.com中的修改密码功能

  

  使用方法:

  第一步:保存图片

  第二步:根据您的需要修改js文件中该图片地址。如下所示:

以下是引用片段:
var bImg="pwdlen.gif";//一张显示用的图片

  第三步:在需要检测的页面中引用这个脚本文件,如下所示:

以下是引用片段:
<script type="text/javascript" src="chkpwd.js"></script>

  第四步:在网页的表单中,找到密码输入框添加onblur事件驱动,然后添加一个Div,如下所示:

以下是引用片段:
<input type="password" name="pwd" onblur="chkpwd(this)" />
<div id="chkResult">强度检测</div>

  第五步:根据您页面的需要通过样式表CSS重新定义#chkResult的摆放位置,以合适您网页的整体布局。

完整代码如下:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>密码</title>
<style type="text/css">
body{
 font-size:12px;
 font-family: Arial, Helvetica, sans-serif;
 margin:0;
}
form{
 margin:2em;
}
#chkResult{margin-left:53px;height:15px;}
</style>
</head>

<body>
<form name="form1">
 <label for="pwd">用户密码</label>
 <input type="password" name="pwd" _disibledevent="chkpwd(this)" />
 <div id="chkResult"></div>
 <label for="pwd2">重复密码</label>
 <input type="password" name="pwd2" />
</form>
<script type="text/javascript">
 function chkpwd(obj){
  var t=obj.value;
  var id=getResult(t);
 
  //定义对应的消息提示
  var msg=new Array(4);
  msg[0]="密码过短。";
  msg[1]="密码强度差。";
  msg[2]="密码强度良好。";
  msg[3]="密码强度高。";
 
  var sty=new Array(4);
  sty[0]=-45;
  sty[1]=-30;
  sty[2]=-15;
  sty[3]=0;
 
  var col=new Array(4);
  col[0]="gray";
  col[1]="red";
  col[2]="#ff6600";
  col[3]="Green";
 
  //设置显示效果
  var bImg="http://bbs.blueidea.com/attachments/2006/12/7/pwdlen_dSIPeEGQWxfO.gif";//一张显示用的<a href="http://pic.yesky.com/" class="bluekey" target="_blank">图片</a>
  var sWidth=300;
  var sHeight=15;
  var Bobj=document.getElementById("chkResult");

  Bobj.style.fontSize="12px";
  Bobj.style.color=col[id];
  Bobj.style.width=sWidth + "px";
  Bobj.style.height=sHeight + "px";
  Bobj.style.lineHeight=sHeight + "px";
  Bobj.style.background="url(" + bImg + ") no-repeat left " + sty[id] + "px";
  Bobj.style.textIndent="20px";
  Bobj.innerHTML="检测提示:" + msg[id];
 }
 
 //定义检测函数,返回0/1/2/3分别代表无效/差/一般/强
 function getResult(s){
  if(s.length < 4){
   return 0;
  }
  var ls = 0;
  if (s.match(/[a-z]/ig)){
   ls++;
  }
  if (s.match(/[0-9]/ig)){
   ls++;
  }
   if (s.match(/(.[^a-z0-9])/ig)){
   ls++;
  }
  if (s.length < 6 && ls > 0){
   ls--;
  }
  return ls
 }
</script>
</body>

</html><script language="Javascript">
var now = new Date();
document.write("<img src='http://counter.yesky.com/counter.shtml?CID=54197&AID=-1&refer="+escape(document.referrer)+"&rand="+ now.getTime()  + "&cur="+escape(document.URL)+"' border='0' alt='' width='0' height='0'>");
</script>
<noscript>
<img src="http://counter.yesky.com/counter.shtml?CID=54197&AID=-1&refer=noscriptcounter&cur=noscriptcounter" border='0' width='0' height='0'/>
</noscript>

远播学友评论

共有0条评论,欢迎您发表!
用户名:  密码:   注册会员
发表评论时请自觉遵守互联网政策法规,查看相关规定
  • 遵守《互联网新闻信息服务管理规定》及中华人民共和国其他各项有关法律法规
  • 尊重网上文明,严禁发表侮辱、诽谤、教唆、淫秽内容
  • 承担一切因您的行为而直接或间接引起的法律责任
  • 您在远播评论发表的言论,远播教育网有权在网站内保留、转载、引用或者删除

特价课程

物流热门培训课程

<-23456->