基于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 未结束的字符串常量错误解决方法
Jun 13 Javascript
纯JS实现根据CSS的class选择DOM
Mar 22 Javascript
js中this的用法实例分析
Jan 10 Javascript
PHPExcel中的一些常用方法汇总
Jan 23 Javascript
JavaScript学习小结(7)之JS RegExp
Nov 29 Javascript
JavaScript实现弹出模态窗体并接受传值的方法
Feb 12 Javascript
js遍历json的key和value的实例
Jan 22 Javascript
HTML5+jQuery实现搜索智能匹配功能
Mar 24 jQuery
解决vue无法设置滚动位置的问题
Oct 07 Javascript
20多个小事例带你重温ES10新特性(小结)
Sep 29 Javascript
微信小程序实现简单文字跑马灯
May 26 Javascript
VUE中setTimeout和setInterval自动销毁案例
Sep 07 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
PHP 中执行系统外部命令
2006/10/09 PHP
PHP json格式和js json格式 js跨域调用实现代码
2012/09/08 PHP
使用 PHPMAILER 发送邮件实例应用
2012/11/07 PHP
基于PHP一些十分严重的缺陷详解
2013/06/03 PHP
功能强大的PHP POST提交数据类
2016/07/15 PHP
浅谈使用 Yii2 AssetBundle 中 $publishOptions 的正确姿势
2017/11/08 PHP
详解PHP中curl_multi并发的实现
2020/06/08 PHP
HTML页面如何象ASP一样接受参数
2007/02/07 Javascript
Js 冒泡事件阻止实现代码
2013/01/27 Javascript
js实现页面跳转重定向的几种方式
2014/05/29 Javascript
javascript常用函数归纳整理
2014/10/31 Javascript
分析js闭包引起的事件注册问题
2016/03/29 Javascript
深入理解Angularjs向指令传递数据双向绑定机制
2016/12/31 Javascript
JS优化与惰性载入函数实例分析
2017/04/06 Javascript
基于Swiper实现移动端页面图片轮播效果
2017/12/28 Javascript
vue2.0模拟锚点的实例
2018/03/14 Javascript
JS实现求5的阶乘示例
2019/01/21 Javascript
基于JavaScript获取base64图片大小
2019/10/18 Javascript
JavaScript判断浏览器版本的方法
2019/11/03 Javascript
vue 递归组件的简单使用示例
2021/01/14 Vue.js
django文档学习之applications使用详解
2018/01/29 Python
Python之列表的插入&amp;替换修改方法
2018/06/28 Python
基于Python获取照片的GPS位置信息
2020/01/20 Python
Python函数默认参数常见问题及解决方案
2020/03/26 Python
Python使用内置函数setattr设置对象的属性值
2020/10/16 Python
英国珠宝网站Argento: PANDORA、Olivia Burton和Nomination等
2020/05/08 全球购物
中式婚礼主持词
2014/03/13 职场文书
党课培训主持词
2014/04/01 职场文书
护士上岗前培训自我鉴定
2014/04/20 职场文书
卖车协议书
2014/04/21 职场文书
土建专业毕业生自荐书
2014/07/04 职场文书
经营目标管理责任书
2014/07/25 职场文书
python解决12306登录验证码的实现
2021/04/18 Python
Java 深入探究讲解简单工厂模式
2022/04/07 Java/Android
TS 类型兼容教程示例详解
2022/09/23 Javascript
Android实现获取短信验证码并自动填充
2023/05/21 Java/Android