微信端没有纯数字键盘,用html5写了一个模仿ios输入支付密码键盘效果

keyboard.js

var _keyboard = {};

	$(document).ready(function(){
_keyboard.bindKey();
_keyboard.close();
});
_keyboard.num = 0;
/**
* 给键盘绑定事件
*/
_keyboard.bindKey=function(){
$("#keyId").on("tap","li",function(){
var jthat = $(this);
var numVal = jthat.attr("val");
var inputVal = $("#contentId").val(); if(numVal == -1){ //删除数值
_keyboard.delChar(); }else{ //添加数值
_keyboard.addChar(numVal);
} });
} /**
* 添加字符
* @param {Object} numVal 按键的num
* @param {Object} inputVal input内容
*/
_keyboard.addChar=function(numVal){
// console.log(numVal);
if(numVal == "."){
return ;
}
if($("#contentId").find("input").eq(5).val() == ""){
$("#contentId").find("input").eq(_keyboard.num).val(numVal);
}
if(_keyboard.num < 5){
_keyboard.num++;
} }
_keyboard.close = function(){
$("#keyboardClose").on("click",function(){
$("#contentId").hide();
$("#_Wdafy_keyboard").hide();
$("#keyboardbackground").hide();
});
}
/**
* 删除字符
* @param {Object} inputVal 当前input的val
*/
_keyboard.delChar=function(){
$("#contentId").find("input").eq(_keyboard.num).val("");
if(_keyboard.num == 0){return }
_keyboard.num--; }

  keyboard.htm

 <div id="contentId"  class="_Wdafy_faInput" style="display: block;">
<div id="keyboardClose" class="close"> <img src="img/regClose_Hover.png" /> </div>
<div class="zfpassword">请输入支付密码</div>
<input type="password" readonly="readonly" />
<input type="password" readonly="readonly" />
<input type="password" readonly="readonly" />
<input type="password" readonly="readonly" />
<input type="password" readonly="readonly" />
<input type="password" readonly="readonly" />
<!--<img class="guangbiao" src="img/guangbiao.gif" id="cursorId"/>-->
<!--<input type="text" id="contentId" readonly="readonly" maxlength="20" value=""/>-->
</div> <div id="keyboardbackground" class="keyboardbackground"></div> <div id="_Wdafy_keyboard" class="_Wdafy_keyboard" style="display: block;"> <ul id="keyId">
<li val="1">1</li>
<li val="2">2</li>
<li val="3">3</li>
<li val="4">4</li>
<li val="5">5</li>
<li val="6">6</li>
<li val="7">7</li>
<li val="8">8</li>
<li val="9">9</li>
<li val="."></li>
<li val="0">0</li>
<li val="-1">x</li>
</ul>
</div>

  keyboard.css

   body,html {
height: 100%;
}
*{
padding: 0;
margin: 0;
} ._Wdafy_faInput input {
width: 6.2rem; height: 1.4rem; font-size: 0.5rem; line-height: 1.4rem;
}
._Wdafy_faInput .guangbiao {
position: absolute;
left: 10px;
top:0.34rem;
}
._Wdafy_faInput .guangbiao img {
width: 0.01rem;
}
._Wdafy_keyboard {
width: 7.5rem;
position: absolute;
bottom: 0;
}
._Wdafy_keyboard li {
width: 2.5rem;
height: 1rem;
border: 1px solid #BFBFBF;
font-size: 0.6rem;
background: #F5F5F5;
float: left;
line-height: 1rem;
text-align: center;
box-sizing: border-box;
}
._Wdafy_TopBackground {
width: 7.5rem;
text-align: center;
line-height: 0.9rem;
background: #F5F5F5;
height: 0.9rem;
}
._Wdafy_faInput {
position: relative; z-index: 100; text-align: center;
background: #FFF; position: absolute; top: 2rem; margin: 0 auto; width: 6rem;
padding: 0.6rem 0 0.7rem 0;
border-radius: 0.3rem;
left: 0;
right: 0;
margin: 0 auto;
}
._Wdafy_faInput input {
width: 0.74rem;
height: 0.74rem;
background: #FFF;
border: 1px solid #ccc;
text-align: center;
margin-left: 0.2rem;
line-height: 0.5rem;
float: left;
display: block; }
.keyboardbackground {
width: 7.5rem;
height: 100%;
background: #000;
opacity: 0.7;
position: fixed;
}
.zfpassword {
font-size: 0.3rem;
margin-bottom: 0.2rem;
}
._Wdafy_faInput .close {
position: absolute;
top: 0rem;
right: 0rem;
z-index: 99999; }
._Wdafy_faInput .close img {
width: 0.78rem;
height: 0.88rem;
}

  

css+javascript 写的HTML5 微信端输入支付密码键盘的更多相关文章

  1. uni-app - 支付(app支付、小程序支付、h5(微信端)支付)

    App支付.小程序支付.h5(微信端)支付 APP支付(内置) appPay.js /** * 5+App支付,仅支持支付宝以及微信支付 * * 支付宝Sdk集成,微信sdk未集成 * * @para ...

  2. css+jq写的小小的移动端按钮的动画改变(三个很闲变成一个叉号)

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  3. 微信端支付宝支付,iframe改造,解决微信中无法使用支付宝付款和弹出“长按地址在浏览器中打开”

    微信对支付宝的链接屏蔽了, https://mapi.alipay.com/gateway.do?_input_charset=utf-8&notify_url=http%3A%2F%2Fzh ...

  4. 第八十六节,html5+css3pc端固定布局,网站结构,CSS选择器,完成导航

    html5+css3pc端固定布局,网站结构,CSS选择器,完成导航 页面采用1280的最低宽度设计,去掉滚动条为1263像素. 项目是PC端的固定布局,会采用像素(px)单位. 网站结构语义 在没有 ...

  5. iphone手机微信端html5 Geolocation定位失效的问题

    使用Geolocation方法存在错误信息error.POSITION_UNAVAILABLE 其实问题不局限于微信端而是iphone升级到ios10后,对获取地理位置信息作出了限制,只有https的 ...

  6. html5音频audio对象处理以及ios微信端自动播放和息屏后唤醒的判断---可供参考(功能都完整实现了,只是细节还没处理的很好)

    // html模版中的 此处结合了weui样式整合的微信手机端片段代码(不可直接粘贴复制进行使用)里面含有一些php的写法,可直接略过..###重点参考js代码### <div> < ...

  7. HTML5中的audio在手机端和 微信端的自动播放

    再做H5页面的时候,发现audio在手机端和微信端添加了autoplay以后还是不可以自动播放,这是因为手机端为了节约流浪所设置的 通常解决方法是给一个交互事件,一定要是交互事件 标签:<aud ...

  8. html5 移动端单页面布局

    序     移动端的web网页使用的是响应式设计,但一般我们看到的网站页面都是跳转刷新得到的,比如通过点击一个menu后进入到另一个页面 今天来说下是移动端的单页面的布局.单页面就是一切操作和布局都是 ...

  9. 关于手机微信端ios的input不能选中问题解决方案

    最近在做一个微信端的商城,以前做web端的比较多,手机端做的相对来说要少点,老板说让我用俗称”靠谱的移动前端框架”—-AUI来搭建项目. 当时觉得用不用框架无所谓啦.结果后来写到一半把项目发布到手机上 ...

随机推荐

  1. 20M宽带的网速等价于多少?

    最近有朋友问我:我家的宽带是20兆的,怎么网速这么慢? 运营商说的20M,完整的单位应该是20Mbps(bps:比特率),而日常中所说的下载速度单位是MB,两者是不一样的. 它们之间的换算关系是:1M ...

  2. [AngularJS 2 实践 一]My First Angular App

    最近一直在看关于AngularJS 2的资料,查看了网上和官网很多资料,接下来就根据官网教程步骤一步步搭建我的第一个Angular App AngularJS 2说明请参考:http://cnodej ...

  3. Dijkstra算法and Floyd算法 HDU 1874 畅通工程续

    Dijkstra算法描述起来比较容易:它是求单源最短路径的,也就是求某一个点到其他各个点的最短路径,大体思想和prim算法差不多,有个数组dis,用来保存源点到其它各个点的距离,刚开始很好办,只需要把 ...

  4. Windows Server 2008 R2 搭建FTP服务

    一.安装ftp服务 1.在服务管理器"角色"右键单击"添加角色".  2.下一步. 3.勾选"Web 服务器(IIS)",下一步. 4.勾选 ...

  5. (转 飛雲若雪)ADO.NET

    一.简单介绍ADO.NET System.Data:DataTable,DataSet,DataRow,DataColumn,DataRelation,Constraint System.Data.C ...

  6. activiti_SpringEnvironment

    package main; import org.activiti.engine.ProcessEngine; import org.activiti.engine.ProcessEngines; i ...

  7. (转)SQL流程控制语句学习(二):begin…end if…else case

    1.begin…end 语法: begin {sql语句或语句块} end 注意:begin 和end要成对使用 2.if…else 语法: if  布尔表达式 {sql语句或语句块} else  布 ...

  8. 如何在CentOS 7上修改主机名

    如何在CentOS 7上修改主机名 在CentOS中,有三种定义的主机名:静态的(static),瞬态的(transient),和灵活的(pretty).“静态”主机名也称为内核主机名,是系统在启动时 ...

  9. 002_系统表查询(sysdatabases等)

    002_系统表查询(sysdatabases等) --1.获取所有数据库名: SELECT Name FROM Master..SysDatabases ORDER BY Name --2.获取所有表 ...

  10. Java之简单的聊天工具

    今天整理资料的时候,找出自己几年前刚学Java时做过的一个简易的聊天工具,有服务器也有客户端,能发送文字消息和文件,但是用户上线并未存入数据库,而只是简单的缓存在服务器的一个数组中,所以,只要服务器一 ...