打造个性化的功能强大的Jquery虚拟键盘(VirtualKeyboard)

2020-05-17 06:26:37易采站长站整理

最近做项目,我负责做网页前端,客户需要利用触摸屏进行操作,不外接鼠标键盘,但要求能录入文字,包括数字,英文,中文。思考了一下,决定用JS实现虚拟键盘。

首先上网搜索了一下JS虚拟键盘,在经过仔细筛选后,相中了VirtualKeyboard,一款功能强大的JS虚拟键盘插件。

先简单介绍一下VirtualKeyboard,它内置了100多种键盘布局和200多种输入法,9套可选皮肤方案,而且支持自建输入法,功能相当强大。

先附上下载地址,目前的最新版本3.94:http://www.corallosoftware.it/Download/download.html 本教程使用的是3.71就不单独提供下载了,有需要的朋友可以下载我修改完毕的,在文章的最后

下载下来先查看它的演示文档,依次打开Jsvkjscriptsdemo_inline.html,看到虚拟键盘做的还是蛮漂亮的,而且支持中文拼音输入,完全符合预期。如下图所示:

集成到项目中去,说干就干!

  首先将Jsvkjscripts目录下的文件复制到项目中去,文本文件和html演示文件可以删掉。

  项目页面中引用JS文件:

<script type=”text/javascript” src=”jscripts/vk_loader.js?vk_layout=CN%20Chinese%20Simpl.%20Pinyin&vk_skin=flat_gray” ></script>
解释一下:vk_layout=CN%20Chinese%20Simpl.%20Pinyin 表示默认输入法设置为简体中文,

              vk_skin=flat_gray 表示默认皮肤选用flat_gray。这两个可以根据个人需要进行设置。

  调用/隐藏虚拟键盘的函数:

VirtualKeyboard.toggle(“txt_Search”, “softkey”);
  txt_Search是文本框的ID,softkey是虚拟键盘显示位置元素的ID。

  下面是个简单的例子:


<html>
    <head>
      <script type=”text/javascript” src=”vk_loader.js?vk_layout=CN%20Chinese%20Simpl.%20Pinyin&vk_skin=flat_gray” ></script>
    </head>
    <body>
        <input type=”text” id=”txt_Search” onfocus=”VirtualKeyboard.toggle(‘txt_Search’, ‘softkey’)” onblur=”VirtualKeyboard.toggle(‘txt_Search’,’softkey’);” />
        <div id=”softkey”></div>
    </body>
</html>       

  效果: