当前位置: 首页 > news >正文

触摸屏虚拟键盘组件 jQuery Virtual Keyboard使用 自定义键盘

如何在触摸设备上为输入域添加虚拟键盘?

一个插件可以解决这个问题,关键还支持高度自定义(git地址):

GitHub - Mottie/Keyboard: Virtual Keyboard using jQuery ~

官网地址:Virtual Keyboard

使用步骤:

1. 下载相关资源

文件夹如下所示:

2. 修改例子

我的需求相对简单,就是需要一个输入纯数字的键盘,那么我将基于basic文件进行修改。

代码示例如下:

<!DOCTYPE html>
<html>
<head><meta charset="utf-8"><title>虚拟键盘</title><!-- 引入jquery --><script src="js/jquery-latest.min.js"></script><!-- 引入自定义样式 --><link href="../css/keyboard1.css" rel="stylesheet"><!-- 引入键盘 --><script src="../js/jquery.keyboard.js"></script><script>$(function(){$('#keyboard').keyboard({layout: 'custom', // 自定义布局usePreview: false, customLayout: {'normal' : ['7 8 9','4 5 6','1 2 3','0 {bksp}']},autoAccept: true, // 自动输入到input中language: 'zh', // 中文display: {'bksp': '删除' // 需要把对应的按钮设置为中文},});});</script>
</head>
<body><div id="wrap"> <input id="keyboard" type="text"></div></body>
</html>

样式可以自定义,这里不再附上。

具体显示为:

同时支持高度自定义键盘,只需要在 customLayout 定义即可;

比如

customLayout: {'default' : ['{rad} {deg} {grad} {sp:.1} {MC} {MR} {MS} {MPLUS} {M-} {a}','{meta1} {ln} ( ) {b} {clear} {clearall} {sign} {sqrt} {c}','{sinh} {sin} {x2} {n!} 7 8 9 / %','{cosh} {cos} {xy} {yroot} 4 5 6 * {invx}','{tanh} {tan} {x3} {cuberoot} 1 2 3 - {equals}','{pi} {Int} {mod} {log} {10x} 0 {dec} +'],'meta1' : ['{rad} {deg} {grad} {sp:.1} {MC} {MR} {MS} {MPLUS} {M-} {a}','{meta1} {ex} ( ) {b} {clear} {clearall} {sign} {sqrt} {c}','{asinh} {asin} {x2} {n!} 7 8 9 / %','{acosh} {acos} {xy} {yroot} 4 5 6 * {invx}','{atanh} {atan} {x3} {cuberoot} 1 2 3 - {equals}','{2pi} {Int} {mod} {log} {10x} 0 {dec} +']},

更多案例可查看docs文件夹。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 阿里巴巴矢量图标库使用
  • 梯度下降算法的原理
  • allWebPlugin中间件实现ActiveX插件在谷歌、火狐、Edge浏览器使用
  • C++:从C语言过渡到C++
  • C++:C++入门基础|命名空间|输入输出
  • OSS存储桶密钥泄露【案例】
  • 【基于R语言群体遗传学】-14-种群起源的相对似然
  • 【云原生】AWS云平台,ECR推送Helm chart包
  • TCP/IP协议超时重传,以及应用层超时重传一文详解
  • OpenHarmony 入门——ArkUI自定义组件的基础语法(一)
  • 开源项目的认识理解
  • 深度学习中的超参管理方法:argparse模块
  • Nodejs 第八十六章(部署pm2)
  • 如何在uniapp中使用websocket?
  • 如何选择一款适合自己的鼠标?
  • input的行数自动增减
  • mysql 数据库四种事务隔离级别
  • React Transition Group -- Transition 组件
  • React中的“虫洞”——Context
  • spring boot 整合mybatis 无法输出sql的问题
  • SpringBoot几种定时任务的实现方式
  • Vim 折腾记
  • 阿里云应用高可用服务公测发布
  • 排序算法之--选择排序
  • 前端路由实现-history
  • 前端面试之CSS3新特性
  • 如何选择开源的机器学习框架?
  • 一文看透浏览器架构
  • 用Node EJS写一个爬虫脚本每天定时给心爱的她发一封暖心邮件
  • ​​​​​​​sokit v1.3抓手机应用socket数据包: Socket是传输控制层协议,WebSocket是应用层协议。
  • ​软考-高级-系统架构设计师教程(清华第2版)【第20章 系统架构设计师论文写作要点(P717~728)-思维导图】​
  • ​探讨元宇宙和VR虚拟现实之间的区别​
  • ‌移动管家手机智能控制汽车系统
  • ### Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLTr
  • #include到底该写在哪
  • #数学建模# 线性规划问题的Matlab求解
  • (aiohttp-asyncio-FFmpeg-Docker-SRS)实现异步摄像头转码服务器
  • (day18) leetcode 204.计数质数
  • (html5)在移动端input输入搜索项后 输入法下面为什么不想百度那样出现前往? 而我的出现的是换行...
  • (LLM) 很笨
  • (附源码)springboot学生选课系统 毕业设计 612555
  • (亲测有效)推荐2024最新的免费漫画软件app,无广告,聚合全网资源!
  • (四)stm32之通信协议
  • (原創) 人會胖會瘦,都是自我要求的結果 (日記)
  • (转载)Google Chrome调试JS
  • (转载)在C#用WM_COPYDATA消息来实现两个进程之间传递数据
  • **python多态
  • ./configure、make、make install 命令
  • .NET CF命令行调试器MDbg入门(四) Attaching to Processes
  • .Net OpenCVSharp生成灰度图和二值图
  • .net 获取url的方法
  • .NET企业级应用架构设计系列之结尾篇
  • .NET与java的MVC模式(2):struts2核心工作流程与原理
  • /bin/bash^M: bad interpreter: No such file ordirectory
  • @autowired注解作用_Spring Boot进阶教程——注解大全(建议收藏!)