标题: 改善用户体验之密码强度提示
ljjk5
元帅
Rank: 1


荣誉会员奖章
UID 46706
精华 1
积分 99426
帖子 49690
威望 554
金币 48489
热心 505
阅读权限 100
注册 2007-2-25
状态 离线
改善用户体验之密码强度提示

功能说明:在用户注册或更改密码时,根据用户输入进行检测并返回结果。能有效地提醒用户提高帐号的安全性。

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

简单预览
运行代码框
<html><head><meta http-equiv="Content-Type" c /><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"  />        <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="/Article/UploadFiles/200612/20061213085107727.gif";//一张显示用的图片                var sWidth=300;                var sHeight=15;                var Bobj=document.getElementById("chkResult");                Bobj.style.f;                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>
[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]
使用方法
第一步:保存图片
第二步:根据您的需要修改js文件中该图片地址。如下所示:
var bImg="pwdlen.gif";//一张显示用的图片
第三步:在需要检测的页面中引用这个脚本文件,如下所示:
<script type="text/javascript" src="chkpwd.js"></script>
第四步:在网页的表单中,找到密码输入框添加onblur事件驱动,然后添加一个Div,如下所示:
<input type="password" name="pwd"  />
<div id="chkResult">强度检测</div>
第五步:根据您页面的需要通过样式表CSS重新定义#chkResult的摆放位置,以合适您网页的整体布局。

网友 ljjk5 签名 - 网友社区 ===
顶部
[广告] 免费域名(Free Subdomain) 免费空间(Free hosting) PR查询(Google Pagerank)



当前时区 GMT+8, 现在时间是 2008-10-8 18:23
信产部ICP备案:京ICP备05066424号 北京市公安局网监备案:1101050648号

Powered by Discuz! 5.5.0
清除 Cookies - 联系我们 - 网友俱乐部 - Archiver - WAP