上次看到别人说写一个类似支付宝支付密码的输入框效果,今天就想自己写了试试看,大体功能是实现了。

已实现部分:1. 焦点会随着输入数值往后推移

2. 如果输入的非0-9,则会出现提示

3. 按Backspance回车可以对应格子焦点往前推移

4. 按回车或者点击按钮可以触发按钮点击事件,获得输入值

未完善部分:1. 在控制输入类型的时候,只有0-9、非0-9以及回车、回删几个键盘事件的区分,不够完善

2. 输入框用的input标签,password类型,会将输入值变成圆点,但是圆点太小不够美观,不知道如何改变圆点大小,考虑是否要画个圆点遮盖

ps:代码不够精简,很多感觉还可以改进精简。

效果图:

代码段:

**index.html 主要代码**

支付宝支付密码:
忘记密码?
请输入6位数字密码

一键获取密码

请输入数字!

**reset.css代码**

*{

padding: 0;

margin: 0;

}

.content{

width: 400px;

height: 50px;

margin: 0 auto;

margin-top: 100px;

}

.title{

font-family: '微软雅黑';

font-size: 16px;

}

.box{

width: 190px;

height: 30px;

border:1px solid #ccc;

margin-top: 10px;

line-height: 30px;

}

.content .box,.forget{

display: inline-block;

}

.content .forget{

width: 100px;

color:lightskyblue;

vertical-align: super;

font-size: 14px;

}

.box input.paw{

width: 30px;

height: 20px;

line-height: 20px;

margin-left: -9px;

border:none;

border-right: 1px dashed #ccc;

text-align: center;

}

.box input.paw:nth-child(1){

margin-left: 0;

}

.content .box .pawDiv:nth-child(6) input.paw{

border: none;

}

.content .box input.paw:focus{outline:0;}

.content .box .pawDiv{

display: inline-block;

line-height: 30px;

width: 31px;

height: 31px;

margin-top: -2px;

float: left;

}

.point{

font-size: 14px;

color: #ccc;

margin: 5px 0;

}

.errorPoint{

color: red;

display: none;

}

.getPasswordBtn{

width: 100px;

height: 30px;

background-color: cornflowerblue;

font-size: 14px;

font-family: '微软雅黑';

color: white;

border: none;

}

**main.js代码**

/*动态生成*/

var box=document.getElementsByClassName("box")[0];

function createDIV(num){

for(var i=0;i

var pawDiv=document.createElement("div");

pawDiv.className="pawDiv";

box.appendChild(pawDiv);

var paw=document.createElement("input");

paw.type="password";

paw.className="paw";

paw.maxLength="1";

paw.readOnly="readonly";

pawDiv.appendChild(paw);

}

}

createDIV(6);

var pawDiv=document.getElementsByClassName("pawDiv");

var paw=document.getElementsByClassName("paw");

var pawDivCount=pawDiv.length;

/*设置第一个输入框默认选中*/

pawDiv[0].setAttribute("style","border: 2px solid deepskyblue;");

paw[0].readOnly=false;

paw[0].focus();

var errorPoint=document.getElementsByClassName("errorPoint")[0];

/*绑定pawDiv点击事件*/

function func(){

for(var i=0;i

pawDiv[i].addEventListener("click",function(){

pawDivClick(this);

});

paw[i].οnkeyup=function(event){

console.log(event.keyCode);

if(event.keyCode>=48&&event.keyCode<=57){

/*输入0-9*/

changeDiv();

errorPoint.style.display="none";

}else if(event.keyCode=="8") {

/*退格回删事件*/

firstDiv();

}else if(event.keyCode=="13"){

/*回车事件*/

getPassword();

}else{

/*输入非0-9*/

errorPoint.style.display="block";

this.value="";

}

};

}

}

func();

/*定义pawDiv点击事件*/

var pawDivClick=function(e){

for(var i=0;i

pawDiv[i].setAttribute("style","border:none");

}

e.setAttribute("style","border: 2px solid deepskyblue;");

};

/*定义自动选中下一个输入框事件*/

var changeDiv=function(){

for(var i=0;i

if(paw[i].value.length=="1"){

/*处理当前输入框*/

paw[i].blur();

/*处理上一个输入框*/

paw[i+1].focus();

paw[i+1].readOnly=false;

pawDivClick(pawDiv[i+1]);

}

}

};

/*回删时选中上一个输入框事件*/

var firstDiv=function(){

for(var i=0;i

console.log(i);

if(paw[i].value.length=="0"){

/*处理当前输入框*/

console.log(i);

paw[i].blur();

/*处理上一个输入框*/

paw[i-1].focus();

paw[i-1].readOnly=false;

paw[i-1].value="";

pawDivClick(pawDiv[i-1]);

break;

}

}

};

/*获取输入密码*/

var getPassword=function(){

var n="";

for(var i=0;i

n+=paw[i].value;

}

alert(n);

};

var getPasswordBtn=document.getElementsByClassName("getPasswordBtn")[0];

getPasswordBtn.addEventListener("click",getPassword);

/*键盘事件*/

document.οnkeyup=function(event){

if(event.keyCode=="13") {

/*回车事件*/

getPassword();

}

};

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

本文标题: js仿支付宝多方框输入支付密码效果

本文地址: http://www.cppcns.com/wangluo/javascript/164888.html

js多方框输入密码_js仿支付宝多方框输入支付密码效果相关推荐

  1. android银行卡输入密码,android 仿微信添加银行卡时输入支付密码

    最近了解到了BottomSheetBehavior,感觉是个很有意思的布局,刚好项目中有实际场景可以应用,就拿它来实现了,下面是我们要实现的最终效果: gif.gif 底部的键盘布局呢,就是采用的Bo ...

  2. html输入密码正确后实现弹窗,仿微信输入支付密码的弹窗

    微信输入支付密码的弹窗效果相信大家都见过吧,先描述下它的特点(这里先不做微信支付的时候选择支付方式这一块): 1.模态显示,背景灰色,点击背景弹窗消失. 2.提供输入的密码框是看不到光标的,在文本框上 ...

  3. Android仿支付宝订单确认和支付

    1.效果图 2.实现方式 dialog_confirm_order.xml <?xml version="1.0" encoding="utf-8"?&g ...

  4. 模仿支付宝输入支付密码的UI,带JavaScript 密码输入校验功能

    新开发了一个功能,用到了一个模拟支付宝手机端输入密码的的  UI  界面,整体功能还不错.下面看截图.附件里也提供了整套的源码下载. HTML 代码 <meta charset="UT ...

  5. 仿微信输入支付密码的弹窗

    仿微信输入支付密码的弹窗 微信输入支付密码的弹窗效果相信大家都见过吧,先描述下它的特点(这里先不做微信支付的时候选择支付方式这一块): 1.模态显示,背景灰色,点击背景弹窗消失. 2.提供输入的密码框 ...

  6. html输入支付密码样式,基于JS实现类似支付宝支付密码输入框

    基于JS实现类似支付宝支付密码输入框 2019-01-06 编程之家 https://www.jb51.cc 编程之家收集整理的这篇文章主要介绍了基于JS实现类似支付宝支付密码输入框,编程之家小编觉得 ...

  7. qt弹框输入密码_Android仿支付宝密码输入框

    实现效果图: 实现流程: 1.定义6位密码输入View  思路:要绘制边框矩形,绘制分割线,绘制圆点.绘制圆的数目要与字符串的长度有关,添加或者删除都要修改字符串,输入6位后就是要关闭弹框,拿到密码, ...

  8. 微信小程序仿支付宝年账单页面滑动的效果展示

    要有遥不可及的梦想,也要有脚踏实地的本事.----------- Grapefruit.Banuit Gang(香柚帮) 近来要做一个年账单页面,类似于支付宝年账单,就是对一年下单的总结,但是支付宝页 ...

  9. 仿支付宝微信提现输入判断

    下面是支付宝,微信充值要求的可以输入什么值不可以输入什么值要求,保留俩位有效数字,其他等等 mMoney.addTextChangedListener(new TextWatcher() { @Ove ...

最新文章

  1. 遇到bug心寒了?用Enter键即可解决!
  2. 计算机视觉顶会CVPR2020接收论文列表已公布,1470篇上榜, 你的paper中了吗?
  3. N个数依次进栈,求所有可能的出栈方式
  4. Telltale:看Netflix如何简化应用程序监控体系
  5. “睡服”面试官系列第十四篇之数组的扩展(建议收藏学习)
  6. 7-10 A-B (20 分)
  7. HDU 2222- Keywords Search
  8. 鸟类的视力很惊人,如何从高空中发现食物
  9. 孙玄/陈东:聊一聊ZooKeeper的顺序一致性
  10. JAVA基础知识点大全之一
  11. 西门子界面官方精美触摸屏+WINCC程序模板 西门子官方触摸屏程序模板,炫酷的扁平式动画效果
  12. [基本功]假设检验概念统计量一览
  13. mysql out of range,mysql保存数据提示:Out of range value for column错误
  14. C语言 实现长整数的相加
  15. Python中os.sep的用法
  16. Opengl加载与创建纹理
  17. SQL Server LocalDB本地文件数据库操作实践
  18. Android手写签名功能(包含画米字格,人名和书写轨迹)
  19. 【Demllie航天】火箭方程
  20. 你为什么一定要去美国?给我一个理由

热门文章

  1. python条形统计图显示数值_Python+matplotlib+numpy绘制精美的条形统计图
  2. 软件开发实训(720)
  3. 大学生蓝桥杯比赛时间2020_2020蓝桥杯STEAM比赛考试说明
  4. cmd安装mysql时出现:计算机中丢失MSVCP120.dll 的解决办法
  5. 小白学mysql 5.7.21遇到的安装丢失msvcp120.dll,msvcr120.dll,0xc000007b+服务无法启动
  6. python中的二维数组_Python中的二维数组实例(list与numpy.array)
  7. 超小体积+医疗级数据健康监测模块
  8. HTML5+CSS3网页设计视频教程 (咖啡文化网站制作)
  9. jmplayer苹果app怎么用_iMessage App Store怎么用?苹果iOS10 iMessage应用商店使用教程...
  10. 音视频开发基础知识(2)——最通俗易懂的视频编解码理论知识