Html - 幽灵键盘

Css

#shurufa_a,#shurufa_num,#shurufa_q,#shurufa_z{list-style:none;margin:15px auto;clear:both;padding:0;text-align:center}
#shurufa_gongneng,#shurufa_num_123,#shurufa_num_456,#shurufa_num_789{padding-left:0}
#shurufa_a li,#shurufa_gongneng li,#shurufa_num li,#shurufa_num_123 li,#shurufa_num_456 li,#shurufa_num_789 li,#shurufa_num_c0 li,#shurufa_q li,#shurufa_z li{display:inline-block;width:8%;padding:5px;border:1px solid #fff;text-align:center;background:0 0;line-height:30px;margin-right:5px;color:#fff;border-radius:7px;filter:progid:DXImageTransform.Microsoft.Shadow(color=#909090, direction=120, strength=3);-moz-box-shadow:2px 2px 10px #909090;-webkit-box-shadow:2px 2px 10px #909090;box-shadow:2px 2px 10px #909090}
#shurufa_num_123 li,#shurufa_num_456 li,#shurufa_num_789 li,#shurufa_num_c0 li{clear:both;width:19%;min-width:65px;padding:15px}
#shurufa_a li:active,#shurufa_gongneng li:active,#shurufa_num li:active,#shurufa_num_123 li:active,#shurufa_num_456 li:active,#shurufa_num_789 li:active,#shurufa_num_c0 li:active,#shurufa_q li:active,#shurufa_z li:active{background:#fff;color:#000}
#shurufa_input,#shurufa_input_num{width:30%;background:0 0;border-bottom:1px solid #fff;border-left:none;border-top:none;border-right:none;border-radius:0;text-align:left;color:#fff;margin:15px 10px 0 10px;float:left;padding-left:5px;font-size:17px}
#shurufa_input_num{float:none;width:30%;text-align:center}
.shurufa_gongnengtitle{float:right;padding-right:15px;margin-top:7px}

Html

<!-- 幽灵输入法  -->
<script type="text/template" id="shurufahtml">
    <input type="text" name="shurufa_input" readonly="readonly" id="shurufa_input"  placeholder="Input Something ..."/>
    <ul id="shurufa_gongneng">
        <li id="shurufa_back" class="mui-icon mui-icon-arrowthinleft" style="width: 100px;margin-top: 7px;"><h4 class="shurufa_gongnengtitle" >返回</h4></li>
        <li id="shurufa_clear" class="mui-icon mui-icon-trash" style="width: 100px;margin-top: 7px;"><h4 class="shurufa_gongnengtitle"  >清空</h4></li>
        <li id="shurufa_send" class="mui-icon mui-icon-paperplane" style="width: 100px;margin-top: 7px;" ><h4 class="shurufa_gongnengtitle">发送</h4></li>
    </ul>
    <ul id="shurufa_num">
        <li>1</li><li>2</li><li>3</li><li>4</li><li>5</li><li>6</li><li>7</li><li>8</li><li>9</li><li>0</li>
    </ul>
    <ul id="shurufa_q">
        <li>Q</li><li>W</li><li>E</li><li>R</li><li>T</li><li>Y</li><li>U</li><li>I</li><li>O</li><li>P</li>
    </ul>
    <ul id="shurufa_a">
        <li>A</li><li>S</li><li>D</li><li>F</li><li>G</li><li>H</li><li>J</li><li>K</li><li>L</li>
    </ul>
    <ul id="shurufa_z">
        <li>Z</li><li>X</li><li>C</li><li>V</li><li>B</li><li>N</li><li>M</li>
    </ul>
</script>

JS

/* 打开幽灵键盘全版  */
var shurufa_open = function(e)
{
    var active_obj = e;        //获取子页面的对象
    $(".shurufa_input_active").removeClass("shurufa_input_active");
    $(e).addClass("shurufa_input_active"); //添加标志
    var val = $(e).val();
    var placehoder = $(e).attr("placeholder");
    var myinput = null;

    layer.open
    ({
        style: ‘width:100%;height:100%;background:rgba(0,0, 0, .2);margin: auto 0px;‘,
        content: $("#shurufahtml").html(),
        success:function()
        {
            $(".layermanim").css({"max-width":"100%"});
            $(".layermcont").css({"padding":"10px 20px 15px 20px"});
            $("#shurufa_input").val(val);
            $("#shurufa_input").attr("placeholder",placehoder); //替换placehoder
            myinput = $("#shurufa_input,.shurufa_input_active");

            document.onkeydown=function(event)
            {
                var e = event || window.event || arguments.callee.caller.arguments[0];
                var keyCode = e.keyCode || e.which;
                if(keyCode >= 48 && keyCode <= 57 || keyCode >= 96 && keyCode <= 105)
                {
                    var k = get_keycode(keyCode);
                    var key= $("#shurufa_input").val() +  k;
                    $("#shurufa_input,.shurufa_input_active").val(key);
                }
            }
        }
    }); 

    $("#shurufa_num li,#shurufa_q li,#shurufa_a li,#shurufa_z li").bind("click",function()
    {
        var str = $(this).text();
        var v = myinput.val() + str;
        myinput.val(v);
        $(active_obj).val(v);
    })

    $("#shurufa_back").bind("click",function()
    {
        var v = myinput.val();
        var value = v.substr(0,v.length - 1);
        myinput.val(value);
        $(active_obj).val(value);
    })

    $("#shurufa_clear").bind("click",function(){
        myinput.val("");
        $(active_obj).val("");
    })

    $("#shurufa_send").bind("click",function()
    {
        var myinput = $("#shurufa_input");
        var v = myinput.val();
        $(".shurufa_input_active").val(v);
        $(active_obj).val(v);
        layer.closeAll();
    })
}

使用方法:

1、引入css

2、引入HTML,你也可以将HTML转化为JS(http://www.css88.com/tool/html2js/),然后在页面中插入

对任意的input:text加入onclick = "shurufa_open(this) " 和 readonly="readonly" 如:

<input id="add_lianxiren" readonly="readonly" onclick="parent.shurufa_open(this)" type="text" value="" placeholder="请输入联系人" class="mui-input-clear" />
时间: 2024-08-04 12:23:10

Html - 幽灵键盘的相关文章

世界最快机械键盘诞生 传统机械键盘还有未来吗?

今年年初,苹果正式对外发布12吋版的Retina MacBook笔记本,这款新产品除了具备众望所归的视网膜屏幕之外,其最大的特色还来自于使用了蝶式键盘架构.不过,针对苹果的这一重大创新,大多媒体在进行评测的时候均指出,这种键盘结构虽然提升了笔记本整体的观感,但对于文字输入而言却是一个倒退,很多专业人士在评测这款Macbook的时候,甚至明确指出其并不适合普通用户使用. 而另一则同样和键盘有关的消息,则是小米可能将在今年内推出全新的机械键盘. 这两起事件和消息虽然并无颠覆性影响或重大意义,但也透露

哪种机械键盘更适合打游戏? 机械键盘5种常用机械轴详细介绍

哪种机械键盘更适合打游戏? 机械键盘5种常用机械轴详细介绍 机械键盘 12-08 (4)青轴 最具特点的就是青轴,青轴一般是打字员的梦想,很少用于游戏,不过是本人的最爱,特点是只有当声音响起的时候按键才被触发,因此打字的时候噼里啪啦,无论是指尖还是心理上都得到了极大满足. 但是其"机动性"打字和双击时效果并不是很好,因为触底比"触发"要高,这款特别适合输入文字,但是要注意噪音很大,但这也是我喜欢MX青轴的原因之一. (5)白轴 最后说一下白轴,目前白轴基本已经停产了

玩咖专属,世界最快机械键盘

在我大学的那个年代,宿舍每个人都人手一台电脑,当然玩游戏还是台式机最爽啦,所以宿舍很少有人用笔记本,什么CS1.6.魔兽.跑跑卡丁车,劲舞团甚至大话西游,都是我们那个年代敲击键盘的主要内容.而现如今的我虽然对台式机购买过正版win8和做过几次硬件的升级,但现在的它却静静的躺在电视柜里偶尔为家人点播一些大片.台式机不知不觉的离我远去,而我的Mac却为我敲出了更多的文字和生活. 5月29日,受邀参加了双飞燕#键击巅峰#世界最快机械键盘PK发布会,在收到邀请之初,我就在想键盘的世界最快有什么意义,这是

xcode模拟器不显示键盘解决方案

当我们使用Xcode进行开发的时候,并不是所有的时候都需要将代码运行在iPhone,有时候模拟器就可以解决这些问题, 但是当你使用模拟器的时候会发现,在TextFiled中输入信息时,如果你是用模拟器上的键盘进行操作,OK没问题, 但是当你是用键盘输入信息的话,那么你会发现模拟器上的键盘就不会再显示了 这是因为,xcode默认情况下,使用电脑键盘作为外接键盘,不再弹出虚拟键盘. 你可以这样做: 运行模拟器,然后 hardware -> keyboard -> connect hardware

解决安卓手机键盘弹出时会把背景或百分比定位的布局压缩的问题

做移动端页面时经常遇到以下案例,在有背景的页面上写表单,而且底部为了适应不同手机还得运用绝对定位,因为通常是把容器高度设为了100%,这时在安卓手机上弹窗软键盘时就会把背景图片及其他东西挤压上去,解决方法如下: 在css样式中把大容器定义为fixed布局 .wrap{ position:fixed;left:0;top:0; } 在js中强制把页面的高度覆给他,就相当于自动撑开 var x =document.body.clientWidth; //查询设备的宽度 var y =document

前端angularJS利用directive实现移动端自定义软键盘的方法

最近公司项目的需求上要求我们iPad项目上一些需要输入数字的地方用我们自定义的软键盘而不是移动端设备自带的键盘,刚接到需求有点懵,因为之前没有做过,后来理了一下思路发现这东西也就那样.先看一下实现之后的效果: 实现的效果就是当点击页面中需要弹出软键盘的时候软键盘弹出,浮在页面的中间,和模态框一样的效果,可以在软键盘中输入任何数字,附带的功能有小数点.退格.清空.确定等功能.当在键盘上点击数字的时候页面中的表单中实时的添加对应的数字,上图中可以看到. 产品经理那边给的原因是iPad屏幕本来就小,如

ios 键盘追加完成按钮

//键盘追加完成按钮 UIToolbar * topView = [[UIToolbar alloc]initWithFrame:CGRectMake(0, 0, 320, 30)]; [topView setBarStyle:UIBarStyleDefault]; UIBarButtonItem * btnSpace = [[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace

移动端 input 获取焦点后弹出带enter(类似于搜索,确定,前往)键盘,以及隐藏系统键盘

一:调出系统带回车键的键盘 在项目中经常有输入框,当输入完成后点击确定执行相应的动作.但是有些设计没有确定或者搜索按钮,这就需要调用系统键盘,点击系统键盘的确定后执行相应动作. 但是单纯的input是无法实现的,要想调出带回车的键盘必须把input放在form表单里面才可以,并且得加上action(一定要加),下面是个简单的例子. <form action class="search" onsubmit="return false;"> <i cl

13.Linux键盘按键驱动 (详解)

版权声明:本文为博主原创文章,未经博主允许不得转载. 在上一节分析输入子系统内的intput_handler软件处理部分后,接下来我们开始写input_dev驱动 本节目标: 实现键盘驱动,让开发板的4个按键代表键盘中的L.S.空格键.回车键 1.先来介绍以下几个结构体使用和函数,下面代码中会用到 1)input_dev驱动设备结构体中常用成员如下: struct input_dev { void *private; const char *name; //设备名字 const char *ph