网页|含有密码强度的注册页面

简介: 网页|含有密码强度的注册页面

问题描述

随着互联网科技的迅速发展,人们对于互联网的依赖性却来越强。各种账号密码出现在人们生活的方方面面。为了提高密码的安全性,很多人都会设置一些复杂的密码。有的网站、app在用户注册的时候也会显示密码的破译困难等级,以此来提醒客户设置更加复杂的密码。如下图所示,就是我们常见的提示密码强度的效果:

图1.1 显示效果

解决方案

密码强度提示效果很明显需要用到css样式以及js进行进一部的设置。我们今天要实现的效果大概如图2.1所示。

图2.1 最终效果

整个页面中的重点就是右侧的用户登录部分。但是这个部分其实也不是太难,表单框架用form表单就可以完成,其他的内容也就不一一介绍了。这里唯一需要详细介绍的应该就是今天的密码强度提示效果了。密码强度提示主要是通过匹配数字,字母以及匹配除数字字母外的特殊符号来实现的。这里我们就需要用到css来进行匹配,相关的代码如下:

<script type="text/javascript">

                     function  CheckIntensity(pwd) {

         var Mcolor, Wcolor, Scolor, Color_Html;      

         var m = 0;     

         //匹配数字

         if (/\d+/.test(pwd)) {

            debugger;

            m++;

         };

         //匹配字母

         if (/[A-Za-z]+/.test(pwd)) {          

            m++;

         };

         //匹配除数字字母外的特殊符号

         if (/[^0-9a-zA-Z]+/.test(pwd)) {           

            m++;

         };

        

         if (pwd.length <= 6) { m = 1; }

         if (pwd.length <= 0) { m = 0; }      

         switch (m) {

            case 1:

                Wcolor = "pwd  pwd_Weak_c";

                Mcolor = "pwd  pwd_c";

                Scolor = "pwd pwd_c  pwd_c_r";

                Color_Html = "弱";

                break;

            case 2:

                Wcolor = "pwd  pwd_Medium_c";

                Mcolor = "pwd pwd_Medium_c";

                Scolor = "pwd pwd_c  pwd_c_r";

                Color_Html = "中";

                break;

            case 3:

                Wcolor = "pwd  pwd_Strong_c";

                Mcolor = "pwd  pwd_Strong_c";

                Scolor = "pwd  pwd_Strong_c pwd_Strong_c_r";

                Color_Html = "强";

                break;

            default:

                Wcolor = "pwd  pwd_c";

                Mcolor = "pwd pwd_c  pwd_f";

                Scolor = "pwd pwd_c  pwd_c_r";

                Color_Html = "无";

                break;

         }

         document.getElementById('pwd_Weak').className = Wcolor;

         document.getElementById('pwd_Medium').className = Mcolor;

         document.getElementById('pwd_Strong').className = Scolor;

         document.getElementById('pwd_Medium').innerHTML = Color_Html;

     }   

              </script>

对于上述代码,其中debugger 语句用于停止执行 JavaScript,并调用 (如果可用) 调试函数。使用 debugger 语句类似于在代码中设置断点。

上面的代码是这样执行的,首先遍历并找到匹配的 case,如果没有匹配(我们这个例子就是没有匹配的)则执行 default,但此时 default 中不存在 break,所以程序又沿着代码继续往下走了。

此外,在匹配过程中我们还用到了正则表达式——/[^0-9a-zA-Z]+/。js正则是在双正斜杠之中起作用的。其中方括号表示范围,^有非的意思。如:[1233]查找方括号之间的任何字符,而[^1233]则表示查找任何不在方括号之间的字符。相关具体内容参考下图:

图2.2 js进阶正则表达式

结语

在实现这个含有显示密码强度的页面过程中,调试各各部分的位置花了很多时间。特别是密码强度显示条的位置最开始一直在尝试使用外链css样式进行调试,但是一直都没有任何效果,最后还是用行内样式进行设置才起了作用。关于这一点还有些疑问,对于外链样式和行内样式的设置可能还有点问题。

目录
相关文章
|
2月前
|
数据安全/隐私保护
在某网站的登录页面登录时如果选择“记住用户名”,登录成功后会跳转到一个中间层(页面代码将登录的用户名和密码存在cookie),中间页面中存在一个超链接,单击超链接可以链接到第三个页面查看信息。若选择“
该博客文章通过示例代码和运行结果截图,展示了网站登录过程中如何通过中间层页面使用cookies技术实现“记住用户名”功能,并在点击超链接后查看保存的用户名和密码信息。
在某网站的登录页面登录时如果选择“记住用户名”,登录成功后会跳转到一个中间层(页面代码将登录的用户名和密码存在cookie),中间页面中存在一个超链接,单击超链接可以链接到第三个页面查看信息。若选择“
|
2月前
|
JavaScript 前端开发
Next js:点击登录显示登录表单,点击注册显示注册表单的功能
本文提供了一个Next.js中使用React状态管理实现点击按钮切换显示登录和注册表单的功能示例,包括创建`authform.tsx`组件和在页面组件中引入使用的方法。
|
4月前
|
前端开发 开发工具 git
大事件项目04-注册和登录两个页面的准备
大事件项目04-注册和登录两个页面的准备
|
前端开发 JavaScript
HTML+CSS+JS 实现一个漂亮的登陆页面
HTML+CSS+JS 实现一个漂亮的登陆页面
476 1
HTML+CSS+JS 实现一个漂亮的登陆页面
|
缓存 搜索推荐 网络安全
钉钉登录页面网页自动跳转,显示对不起,你无权限查看该页面,需要使用钉钉账号登录才可以进行授权
钉钉登录页面网页自动跳转,显示对不起,你无权限查看该页面,需要使用钉钉账号登录才可以进行授权
3495 1
怎么禁止浏览器自动填充账号密码?
怎么禁止浏览器自动填充账号密码?
228 0
怎么禁止浏览器自动填充账号密码?
|
JavaScript 前端开发 数据安全/隐私保护
整合登录和注册页面 | 学习笔记
快速学习 整合登录和注册页面
整合登录和注册页面 | 学习笔记
|
前端开发 PHP
如何实现网站用户登陆之后跳转到登陆之前的页面
主体思路就是在网站的公共头部文件里session中记录当前网页地址以及上一个页面的网页地址,然后就是登陆成功之后如果session中有上一个页面的网址就跳转到上一个页面去,如果session中没有上一个页面就跳转到会员中心去。
285 1
|
Web App开发 安全 .NET
网站被提示该网站内容被禁止访问
很多建站公司都在使用Kindeditor开源的图片上传系统,该上传系统是可视化的,采用的开发语言支持asp、aspx、php、jsp,几乎支持了所有的网站可以使用他们的上传系统,对浏览器的兼容以及手机端也是比较不错的,用户使用以及编辑上传方面得到了很多用户的喜欢。
2760 0
|
Web App开发 安全 索引
网站点击进去出现“该内容被禁止访问”的拦截处理
很多客户的网站被拦截并提示:“该内容被禁止访问”,大多数客户使用的都是阿里云的虚拟主机以及ECS服务器,最近发生这种问题的网站也越来越多,这几天刚解决完一个客户网站被阿里云:违规URL屏蔽访问处理通知并拦截,经过朋友介绍找到我们SINE安全公司。
5177 0