微信端没有纯数字键盘,用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. C#获取文件夹下指定格式的所有文件

    C#获取文件夹下指定格式的所有文件的方法,虽然很简单,但还是分享一下吧,用到时可以稍加修改和优化就可以使用. 获取指定目录下所有文件 //最要使用 System.IO.Directory.GetFil ...

  2. C++输出hello world 详细注释

    /* #include<iostream> #:预处理标志,后面跟预处理指令,include:预处理指令,包含 <iostream>:c++头文件,输入输出流 这行的作用就是在 ...

  3. ASP.NET-FineUI开发实践-4

    最近实在没时间研究东西,FineUI一直也没进一步实践,但是还是很想学点东西,所以找了个课题研究了下,在论坛里看见了又下角的提醒,自己想了想做了一个,我不是大神,接触EXTJS很少,就是用到哪看哪,没 ...

  4. ASP.NET-FineUI开发实践-9(四)

    现在是这么个问题,在开发中表格是动态出来的,就是标准板是全部字段列出,客户要根据情况列出自己想要的,在增加操作页面的同时要是能用前台自带的功能直接保存到后台就好了,现在的列显示和隐藏是不回发的. 1. ...

  5. MVC4 EF linq从客户端中检测到有潜在的危险的Request.Path值

    今天做项目的时候遇到了这样的问题贴出来给大家分享下啦, 使用MVC4 EF linq跳转视图的时候出现,从客户端中检测到有潜在的危险的Request.Path值错误,如下图所示: 解决办法如下:  r ...

  6. C++标准库<string>简单总结

    C++标准库<string>简单总结 在C++中,如果需要对字符串进行处理,那么它自带的标准库<string>无疑是最好的选择,它实现了很多常用的字符处理函数. 要想使用标准C ...

  7. 像table一样布局div的CSS属性详解

    .equal {                     display:table;                     border-collapse:separate;margin: aut ...

  8. JavaScript 客户端JavaScript之 脚本化浏览器窗口

    1.计时器 客户端Javascript以全局函数setTimeOut().clearTimeOut().setInterval().clearInterval()提供这一功能.   前者是从运行的那一 ...

  9. angularjs使用directive实现倒计时按钮

    前不久在做一个彩票的项目时,有一个手动开奖的需求.所以有了这个倒计时按钮.下面分享下具体的代码: 效果: 代码: App.directive('timerBtn', function() { // 倒 ...

  10. 武汉科技大学ACM :1006: 华科版C语言程序设计教程(第二版)习题7.15

    Problem Description 输入n个字符串(n<=100),输出其中最长的串,如果有多个则取最先找到的那一个. Input 多组测试数据. 每组测试数据第一行包含一个整数n,表示一共 ...