zoukankan      html  css  js  c++  java
  • JS自定义手机端H5键盘

    在输入车牌号的时候,因为很多车牌号都是数字字母混合排列的,所以如果用输入法输入就需要频繁切换数字跟字母,有点麻烦。

    在这里我们就用自定义一个弹出框代替键盘来使用。

    1、首先,要禁止掉文本框弹出输入法,这里我用readonly

    <input class="selectCarBtn" readonly="readonly" type="text" placeholder="输入车牌号">

    2、其次需要一个键盘弹框,这里就用div给做一个,想怎么排列就怎么布局。这里的键盘都是写死的,有需要可以循环出来。

     1 <div class="popup OpacityUp popup-selectCarBox">
     2     <div class="btn">
     3         <div class="selectCarTit">
     4             <div class="closeSelectCarBox">取消</div>
     5         </div>
     6         <div class="selectCarCon">
     7             <ul class="number">
     8                 <li>1</li>
     9                 <li>2</li>
    10                 <li>3</li>
    11                 <li>4</li>
    12                 <li>5</li>
    13                 <li>6</li>
    14                 <li>7</li>
    15                 <li>8</li>
    16                 <li>9</li>
    17                 <li>0</li>
    18             </ul>
    19             <ul class="english">
    20                 <li>Q</li>
    21                 <li>W</li>
    22                 <li>E</li>
    23                 <li>R</li>
    24                 <li>T</li>
    25                 <li>Y</li>
    26                 <li>U</li>
    27                 <li>I</li>
    28                 <li>O</li>
    29                 <li>A</li>
    30                 <li>S</li>
    31                 <li>D</li>
    32                 <li>F</li>
    33                 <li>G</li>
    34                 <li>H</li>
    35                 <li>J</li>
    36                 <li>K</li>
    37                 <li>P</li>
    38                 <li>Z</li>
    39                 <li>X</li>
    40                 <li>C</li>
    41                 <li>V</li>
    42                 <li>B</li>
    43                 <li>N</li>
    44                 <li>M</li>
    45                 <li>L</li>
    46                 <li></li>
    47                 <li class="key_ok">确定</li>
    48                 <li class="delect_back"></li>
    49             </ul>
    50         </div>
    51     </div>
    52 </div>

    3、键盘有了,再给它添加点击事件。这里定义一个变量carNum来存放输入的值。

        主要是这个回删事件,用 carNum.substr(0, carNum.length - 1)  来得到回删后的值。

     1 // 自定义键盘事件
     2 $(".selectCarBtn").click(function(){
     3     $.popup(".popup-selectCarBox");
     4 });
     5 $(".closeSelectCarBox").click(function(){
     6     $.closeModal(".popup-selectCarBox");
     7 });
     8 $(".popup-selectCarBox").click(function(e){
     9     $.closeModal(".popup-selectCarBox");
    10 })
    11 $(".selectCarCon").click(function(e){
    12     e.stopPropagation();
    13 })
    14 var carNum = "";
    15 $(".selectCarCon li").not('.delect_back,.key_ok').click(function(){
    16     carNum = carNum + $(this).html();
    17     $(".selectCarBtn").val(carNum);
    18 });
    19 $(".selectCarCon li.delect_back").click(function(){
    20     var num = carNum.substr(0, carNum.length - 1);
    21     $(".selectCarBtn").val(num);
    22     carNum = num;
    23 });
    24 $(".selectCarCon li.key_ok").click(function(){
    25     $.closeModal(".popup-selectCarBox");
    26 });

    但是还不够完善,还有一些问题没有解决:

    例如:

        输入框没有光标了

    怎么完善呢???

  • 相关阅读:
    Python时钟,计算程序运行时间
    关于等高线绘制和全平面坐标节点生成
    Springboot配置文件映射
    Docker和Rancher
    ElasticSearch story(二)
    Elastic Story(一)
    由数量众多照片拼贴而成的马赛克图片
    lnmp一键安装包配置laravel项目
    mysql 创建用户与授权、修改密码
    centos 安装 ntpdate 并同步时间
  • 原文地址:https://www.cnblogs.com/zhengshize/p/8027667.html
Copyright © 2011-2022 走看看