微信端没有纯数字键盘,用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. B/S架构的几种形式

    1. 什么是B/S架构 B/S架构的全称为Browser/Server,即浏览器/服务器结构.Browser指的是Web浏览器,极少数事务逻辑在前端实现,但主要事务逻辑在服务器端实现.B/S架构的系统 ...

  2. ListControl一细节处理

    做VC ListControl的时候发现一个问题,右击菜单的时候,在没有列表数据的空白处也会出现菜单,这可够纠结的,于是用了点方法解决了,希望分享同样不爽的朋友们.代码如下: void CXXXDlg ...

  3. JAVA File转Byte[]

    /** * 获得指定文件的byte数组 */ public static byte[] getBytes(String filePath){ byte[] buffer = null; try { F ...

  4. java 线程池用法

    public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, TimeUnit unit, ...

  5. zookeeper管理solr的配置文件

    zookeeper可以管理solr和其他软件的配置文件.配置文件还是保存在linux服务器的磁盘上,但是不是改变solr读取solr/home配置的配置文件的位置. 现在solr/home配置文件的位 ...

  6. JAVA List与数组间相互转换

    1.list转数组 例如: List<String> list =  new ArrayList<String>(); list.add("aa"); li ...

  7. Shell中IFS用法

    一 .IFS的介绍    Shell 脚本中有个变量叫IFS(Internal Field Seprator) ,内部域分隔符.完整定义是The shell uses the value stored ...

  8. PHP set_error_handler() 函数

    定义和用法 set_error_handler() 函数设置用户自定义的错误处理函数. 该函数用于创建运行时期间的用户自己的错误处理方法. 该函数会返回旧的错误处理程序,若失败,则返回 null. 语 ...

  9. jquery插件:点击拉出的右侧滑动菜单

    就是一个停留在页面右侧的滑动菜单,点击可以拉出,带回调函数.宽高位置可以参数指定.插件代码如下: (jquery的路径请自己修改) (function($){ $.fn.sideSwitch = fu ...

  10. 让一个Activity在开机后自动显示

    Activity本身不会在手机开机后自动运行的.但想让手机开机后就立刻做一些动作,需要使用广播接收器拦截手机开启广播,并在onReceive方法中完成相应的动作,如打开一个Activity. 广播接收 ...