基于JavaScript实现表单密码的隐藏和显示出来


Posted in Javascript onMarch 02, 2016

为了网站的安全性,很多朋友都把密码设的比较复杂,但是如何密码不能明显示,不知道输的是对是错,为了安全起见可以把密码显示的,那么基于js代码如何实现的呢? 当用户输入时密码显示为圆点或者星号, 为了确保用户输入的正确, 用户可以点击让密码显示的按钮. 直接就先看节目效果.

基于JavaScript实现表单密码的隐藏和显示出来 

界面结构, 一个外层的pass-box, 然后内层加入input 和 一个 i 标签, 且给他们加入相应的class名称.

<div class="pass-box">
<input type="password" name="pass" />
<i state="off"></i>
</div>

现在我们给相应的class加入相应的属性值. 在这个box里, i 需要在input之上, 所以需要给 i 一个position属性, 然后调整其top和right. 然后给其设置宽度和高度,设置其背景图片.

.pass-box {
width: 300px;
margin: 30px auto;
position: relative;
}
.pass-box input {
border: #cccccc 1px solid;
background-color: #fff;
color: #666;
padding: 10px;
width: 100%;
box-sizing: border-box;
}
.pass-box i{
display: inline-block;
width: 30px;
height: 30px;
position: absolute;
right: 5px;
top:5px;
background-image: none;
background-size: 200% 200%;
background-position: center;
}

这样界面效果完成. 然后给 i 加入点击事件. 在HTML结构中, 我们给了 i 一个状态, 这个作用主要是用于用户两次点击效果的判断. 点击第一次, 密码显示; 点击第二次, 密码隐藏. 重复这样的动作. 所以利用这个state来查看其状态.

重点就在于, 修改input的type属性, 显示的时候type为 text, 隐藏的时候是 password. 所以JS的逻辑处理也是比较清晰.

var ele_pass_box = document.getElementsByTagName("div")[0];
var ele_pass = ele_pass_box.getElementsByTagName("input")[0];
var ele_eye = ele_pass_box.getElementsByTagName("i")[0];
ele_eye.onclick = function () {
var state = this.getAttribute("state");
if(state === "off") {
ele_pass.setAttribute("type", "text");
ele_eye.setAttribute("state", "on");
ele_eye.style.opacity = 0.2;
} else {
ele_pass.setAttribute("type", "password");
ele_eye.setAttribute("state", "off");
ele_eye.style.opacity = 1;
}
}

这就是逻辑代码, 代码量不多. 大家在测试的时候, 注意细节就好.

以上是小编给大家分享的基于JavaScript实现表单密码的隐藏和显示出来的全部内容,希望对大家有所帮助!

Javascript 相关文章推荐
javascript中的有名函数和无名函数
Oct 17 Javascript
地址栏上的一段语句,改变页面的风格。(教程)
Apr 02 Javascript
js+JQuery返回顶部功能如何实现
Dec 03 Javascript
基于jQuery选择器的整理集合
Apr 26 Javascript
jquery css 设置table的奇偶行背景色示例
Jun 03 Javascript
JavaScript 异常处理 详解
Feb 06 Javascript
javascript定时器完整实例
Feb 10 Javascript
利用Javascript实现BMI计算器
Aug 16 Javascript
如何将你的AngularJS1.x应用迁移至React的方法
Feb 01 Javascript
使用webpack/gulp构建TypeScript项目的方法示例
Dec 18 Javascript
js简单实现自动生成表格功能示例
Jun 02 Javascript
vue项目中企业微信使用js-sdk时config和agentConfig配置方式详解
Dec 15 Vue.js
jQuery判断浏览器并动态调整select宽度的方法
Mar 02 #Javascript
js实现不重复导入的方法
Mar 02 #Javascript
基于JavaScript实现智能右键菜单
Mar 02 #Javascript
JS简单实现String转Date的方法
Mar 02 #Javascript
基于Jquery和html5实现炫酷的3D焦点图动画
Mar 02 #Javascript
JS判断是否长按某一键的方法
Mar 02 #Javascript
JS实现为排序好的字符串找出重复行的方法
Mar 02 #Javascript
You might like
简单PHP上传图片、删除图片实现代码
2010/05/12 PHP
PHP 可阅读随机字符串代码
2010/05/26 PHP
php替换超长文本中的特殊字符的函数代码
2012/05/22 PHP
php合并数组中相同元素的方法
2014/11/13 PHP
php+Ajax处理xml与json格式数据的方法示例
2019/03/04 PHP
实现laravel 插入操作日志到数据库的方法
2019/10/11 PHP
关于jQuery中的end()使用方法
2011/07/10 Javascript
优化Node.js Web应用运行速度的10个技巧
2014/09/03 Javascript
js设置cookie过期当前时间减去一秒相当于立即过期
2014/09/04 Javascript
js实现class样式的修改、添加及删除的方法
2015/01/20 Javascript
transport.js和jquery冲突问题的解决方法
2015/02/10 Javascript
jQuery实现个性翻牌效果导航菜单的方法
2015/03/09 Javascript
JavaScript中setFullYear()方法的使用详解
2015/06/11 Javascript
Angular.js如何从PHP读取后台数据
2016/03/24 Javascript
Bootstrap 模态框实例插件案例分析
2016/12/28 Javascript
React组件refs的使用详解
2018/02/09 Javascript
mock.js模拟前后台交互
2019/07/25 Javascript
vue通过video.js解决m3u8视频播放格式的方法
2019/07/30 Javascript
使用typescript改造koa开发框架的实现
2020/02/04 Javascript
JavaScript动画实例之粒子文本的实现方法详解
2020/07/28 Javascript
python通过urllib2爬网页上种子下载示例
2014/02/24 Python
Python下Fabric的简单部署方法
2015/07/14 Python
利用Python+Java调用Shell脚本时的死锁陷阱详解
2018/01/24 Python
Python实现查看系统启动项功能示例
2018/05/10 Python
对Python中列表和数组的赋值,浅拷贝和深拷贝的实例讲解
2018/06/28 Python
numpy和pandas中数组的合并、拉直和重塑实例
2019/06/28 Python
python celery分布式任务队列的使用详解
2019/07/08 Python
mac系统下Redis安装和使用步骤详解
2019/07/09 Python
通过字符串导入 Python 模块的方法详解
2019/10/27 Python
详解Pycharm出现out of memory的终极解决方法
2020/03/03 Python
新建文件时Pycharm中自动设置头部模板信息的方法
2020/04/17 Python
keras的ImageDataGenerator和flow()的用法说明
2020/07/03 Python
护士演讲稿范文
2014/01/05 职场文书
军训自我鉴定100字
2014/02/13 职场文书
四风查摆问题自查报告
2014/10/10 职场文书
2016年优秀教师先进事迹材料
2016/02/26 职场文书