基于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 相关文章推荐
一个js拖拽的效果类和dom-drag.js浅析
Jul 17 Javascript
jQuery.lazyload+masonry改良图片瀑布流代码
Jun 20 Javascript
jquery实现点击label的同时触发文本框点击事件的方法
Jun 05 Javascript
JavaScript实现为input与textarea自定义hover,focus效果的方法
Aug 21 Javascript
实用又漂亮的BootstrapValidator表单验证插件
May 30 Javascript
原生js实现焦点轮播图效果
Jan 12 Javascript
jQuery实现选项卡功能(两种方法)
Mar 08 Javascript
在原生不支持的旧环境中添加兼容的Object.keys实现方法
Sep 11 Javascript
微信小程序简单实现form表单获取输入数据功能示例
Nov 30 Javascript
微信小程序模板template简单用法示例
Dec 04 Javascript
webpack + vue 打包生成公共配置文件(域名) 方便动态修改
Aug 29 Javascript
详解Javascript实践中的命令模式
May 05 Javascript
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
索尼SONY ICF-SW7600GR电路分析与改良
2021/03/02 无线电
并发下常见的加锁及锁的PHP具体实现代码
2010/10/12 PHP
详解WordPress开发中wp_title()函数的用法
2016/01/07 PHP
php短信接口代码
2016/05/13 PHP
老生常谈PHP数组函数array_merge(必看篇)
2017/05/25 PHP
PHPCrawl爬虫库实现抓取酷狗歌单的方法示例
2017/12/21 PHP
Mootools 1.2教程 滚动条(Slider)
2009/09/15 Javascript
兼容ie、firefox的图片自动缩放的css跟js代码分享
2012/01/21 Javascript
javascript标签在页面中的位置探讨
2013/04/11 Javascript
JQuery为页面Dom元素绑定事件及解除绑定方法
2014/04/23 Javascript
jQuery获取iframe的document对象的方法
2014/10/10 Javascript
NodeJS中利用Promise来封装异步函数
2015/02/25 NodeJs
jQuery拖拽插件gridster使用指南
2015/04/21 Javascript
JavaScript之AOP编程实例
2015/07/17 Javascript
JS数组排序技巧汇总(冒泡、sort、快速、希尔等排序)
2015/11/24 Javascript
深入浅析JavaScript的API设计原则
2016/06/14 Javascript
在Angular中实现一个级联效果的下拉框的示例代码
2020/05/20 Javascript
Vue表单提交点击事件只允许点击一次的实例
2020/10/23 Javascript
jquery实现穿梭框功能
2021/01/19 jQuery
Python新手在作用域方面经常容易碰到的问题
2015/04/03 Python
flask框架中勾子函数的使用详解
2018/08/01 Python
对IPython交互模式下的退出方法详解
2019/02/16 Python
python plotly绘制直方图实例详解
2019/07/22 Python
初次部署django+gunicorn+nginx的方法步骤
2019/09/11 Python
Python函数的默认参数设计示例详解
2019/12/01 Python
Pycharm中安装Pygal并使用Pygal模拟掷骰子(推荐)
2020/04/08 Python
使用python计算三角形的斜边例子
2020/04/15 Python
电焊工工作岗位职责
2014/02/06 职场文书
关于安全演讲稿
2014/05/09 职场文书
毕业实习计划书
2015/01/16 职场文书
护林员个人总结
2015/03/04 职场文书
民事二审代理词
2015/05/25 职场文书
网吧员工管理制度
2015/08/05 职场文书
应届生们该怎么书写求职信?
2019/07/05 职场文书
只需要100行Python代码就可以实现的贪吃蛇小游戏
2021/05/27 Python
详解JAVA的控制语句
2021/11/11 Java/Android