Css

#shurufa_a,#shurufa_num,#shurufa_q,#shurufa_z{list-style:none;margin:15px auto;clear:both;padding:;text-align:center}
#shurufa_gongneng,#shurufa_num_123,#shurufa_num_456,#shurufa_num_789{padding-left:}
#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:;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" />

Html - 幽灵键盘的更多相关文章

  1. 黑暗幽灵(DCM)木马详细分析

    黑暗幽灵(DCM)木马详细分析 0x00 背景 只要插上网线或连上WIFI,无需任何操作,不一会儿电脑就被木马感染了,这可能吗?近期,腾讯反病毒实验室拦截到一个“黑暗幽灵”木马的新变种,该木马功能强大 ...

  2. HTML kbd键盘元素

    1. 说明 kbd :即Keyboard Input Element(键盘输入元素).表示键盘按键的语义元素,常用于网页上对快捷键.按键说明的场景. 样式规格:内联样式. 为了在页面上突出显示,可以给 ...

  3. MVVM TextBox的键盘事件

    MVVM下RichTextBox的键盘回车事件设置为发送,不是回车 xmlns:i="http://schemas.microsoft.com/expression/2010/interac ...

  4. android键盘

    在应用的开发过程中有不少的情况下会用到自定义键盘,例如支付宝的支付密码的输入,以及类似的场景.android系统给开发者们提供了系统键盘,KeyboardView,其实并不复杂,只是有些开发者不知道罢 ...

  5. Android如何制作漂亮的自适布局的键盘

    最近做了个自定义键盘,但面对不同分辨率的机型其中数字键盘不能根据界面大小自已铺满,但又不能每种机型都做一套吧,所以要做成自适应,那这里主讲思路. 这里最上面的titlebar高度固定,下面输入的金额高 ...

  6. iOS 键盘添加完成按钮,delegate和block回调

    这个是一个比较初级一点的文章,新人可以看看.当然实现这个需求的时候自己也有一点收获,记下来吧. 前两天产品要求在工程的所有数字键盘弹出时,上面带一个小帽子,上面安装一个“完成”按钮,这个完成按钮也没有 ...

  7. WPF 捕获键盘输入事件

    最近修改的一个需求要求捕获键盘输入的 Text,包括各种标点符号. 最开始想到的是 PreviewKeyDown 或者 PreviewKeyUp 这样的键盘事件. 但是这两个事件的对象 KeyEven ...

  8. [转载]从MyEclipse到IntelliJ IDEA-让你摆脱鼠标,全键盘操作

    从MyEclipse转战到IntelliJ IDEA的经历 注转载址:http://blog.csdn.net/luoweifu/article/details/13985835 我一个朋友写了一篇“ ...

  9. html中键盘事件----在路上(16)

    键盘事件,这里以onkeyup为例: 解析:当在一个input中输入文本时,在另一个div中输出文本 在下面是本人写的小demo,供分享. 代码如下: <!DOCTYPE html> &l ...

随机推荐

  1. iOS的 context 和Android 中的 canvas

    ios 想要绘图,要用到CGContextRef类.最基本的用法是在- (void)drawRect:(CGRect)rect 函数中绘制. Android 中要用到Canvas类.最基本的用法是在  ...

  2. Android 中的Resource

    Android与ios相比,各种各样Resource算个独特之处.详情请参见官网Resource Types Resource有许多种,常见的有图像资源,布局资源,等等.每一种资源的位置都是固定的,这 ...

  3. Ribbon_窗体_实现Ribbon风格的窗体

    Ribbon_窗体_实现Ribbon风格的窗体 随着office2007的兴起,微软让我们看到了Ribbon风格的窗体,现在很多软件也都开始使用Ribbon风格.那么我们如果要自己开发,应当怎么做呢? ...

  4. POJ 2549 Sumsets hash值及下标

    题目大意:找到几何中的4个数字使他们能够组成 a+b+c=d , 得到最大的d值 我们很容易想到a+b = d-c 那么将所有a+b的值存入hash表中,然后查找能否在表中找到这样的d-c的值即可 因 ...

  5. ubuntu maven环境安装配置

    转载地址:http://my.oschina.net/hongdengyan/blog/150472#OSC_h1_4 一.环境说明: 操作系统:Ubuntu 12.04.2 LTS maven:ap ...

  6. 解决java.lang.UnsupportedClassVersionError

    出现java.lang.UnsupportedClassVersionError 错误的原因,是因为我们使用高版本的JDK编译的Java class文件试图在较低版本的JVM上运行,所报的错误. 版本 ...

  7. 运输装备(codevs 1669)

    1669 运输装备  时间限制: 1 s  空间限制: 256000 KB  题目等级 : 钻石 Diamond 题解       题目描述 Description 德国放松对英国的进攻后,把矛头指向 ...

  8. C++文件读写详解(ofstream,ifstream,fstream)

    C++文件读写详解(ofstream,ifstream,fstream) 这里主要是讨论fstream的内容: #include <fstream> ofstream //文件写操作 内存 ...

  9. C语言实现大数据除法

    本题要求计算A/B,其中A是不超过1000位的正整数,B是1位正整数.你需要输出商数Q和余数R,使得A = B * Q + R成立. 输入格式: 输入在1行中依次给出A和B,中间以1空格分隔. 输出格 ...

  10. Android API中常用的包(转)

    在Android应用开发中,我们一般都是用java语言.所以Android很好的继承了java的功能,不过为了满足手机系统的需要和实现一些新的功能,Android还提供了一些特有的扩展的java功能. ...