mottie / keyboard
一个在浏览器中工作的 jQuery 在屏幕键盘 (OSK) 插件。
v1.30.4
2022-01-25 02:43 UTC
Requires
- jquery: ^1.6.0
- v1.30.4
- v1.30.3
- v1.30.2
- v1.30.1
- v1.30.0
- v1.29.1
- v1.29.0
- v1.28.9
- v1.28.8
- v1.28.7
- v1.28.6
- v1.28.5
- v1.28.4
- v1.28.3
- v1.28.2
- v1.28.1
- v1.28.0
- v1.27.3
- v1.27.3-beta
- v1.27.2
- v1.27.2-beta
- v1.27.1
- v1.27.1-beta
- v1.27.0
- v1.27.0-beta
- v1.26.26
- v1.26.25
- v1.26.24
- v1.26.23
- v1.26.22
- v1.26.21
- v1.26.20
- v1.26.19
- v1.26.18
- v1.26.17
- 1.26.16
- v1.26.15
- v1.26.14
- v1.26.13
- v1.26.12
- v1.26.11
- v1.26.10
- v1.26.9
- v1.26.8
- v1.26.7
- v1.26.6
- v1.26.5
- v1.26.4
- v1.26.3
- v1.26.2
- v1.26.1
- v1.26.0
This package is not auto-updated.
Last update: 2024-09-14 18:47:45 UTC
README
一个在浏览器中工作的 jQuery 在屏幕键盘 (OSK) 插件。
最初由 Jeremy Satterfield 在他的 博客、jQuery 插件 和 Snipplr 上发布。目前由 Mottie 维护。
特性 (演示)
易于使用
- 一个嵌入在浏览器窗口中的屏幕虚拟键盘,当指定的输入字段获得焦点时会弹出。
- 用户可以输入并预览他们的输入,然后在接受或取消之前进行。
- 可以设置为始终打开,并且不使用预览。
易于安装
- 以 zip 格式获取文件,或从 npm 获取 - 请参阅下面的 安装 部分。
- 在最小配置中,键盘通过以下方式工作:
- jQuery
- jQuery UI 主题
- (可选) jQuery UI 位置实用程序,用于在输入/textarea 元素上定位键盘
- 初始化键盘 - 对于qwerty键盘不需要选项。
易于设置
- 将键盘附加到输入、textarea 或可编辑内容元素。
- 轻松添加自定义键盘布局。
- 包括在单独目录中的多个特定区域的键盘布局。这是一个正在进行的工作,正在缓慢增长。
- 为每个布局添加最多四个标准键集,使用 shift 和 alt 键(默认、shift、alt 和 alt-shift)。
- 添加任意数量的可选修饰键(元键)以添加更多键集。
- 每个元键集也可以包括 shift、alt 和 alt-shift 键集。
- 将键盘定位在元素周围的任何位置,或定位页面上的另一个元素(使用 jQuery UI 位置实用程序)。
- 轻松修改键文本来表示任何语言或符号。
- 允许直接输入或锁定预览窗口。
- 设置输入内容的最大长度。
- 当鼠标悬停在键上时,通过鼠标滚轮在键集之间滚动,以避免使用 alt、shift 或元键。
- 轻松输入带重音符号的字符。以下是一些默认组合示例
'+ 元音(带锐音的元音,例如'+e=é)`+ 元音(带重音的元音,例如,`+e=è)"+ 元音(带分音符的元音,例如,"+e=ë)^+ 元音(带圈音符的元音,例如,^+e=ê)~+ 一定字母(带波浪号的字母,例如,~+n=ñ,~+o=õ)
- 根据需要启用、禁用或添加更多重音功能。
- 使用回调和事件触发器,当键盘打开或关闭以及内容更改、接受或取消时发生。
- 包括 ARIA 支持(可能未完全实现)。
- 内置水印功能。如果浏览器不支持,则模拟HTML5的占位符。
- 使用回调函数进行验证,以便可以使用第三方验证方法。
主题
- 默认使用jQuery UI主题。
- 也可以应用Bootstrap主题(原始 或 深色)。
- 或者添加一个完全定制的主题(不使用jQuery UI定位工具)
- 使用 Light 和 keyboard-basic.css。
- 使用 Dark 和 keyboard-dark.css。
扩展
- Alt键:在长按键后显示弹出窗口中的备用键。
- 自动完成:与jQuery UI的自动完成小部件集成。
- 插入符:添加具有自定义样式的插入符。
- 扩展器:添加可切换的布局(例如,切换数字键盘)。
- 键集:在虚拟键盘内显示shift、alt或meta键集 - 自定义样式。
- 移动端:与jQuery Mobile和jQuery Mobile v1.4一起使用。
- 导航:使用箭头、home、end和翻页上下导航键盘内部。
- 打乱:为提高安全性,在打开键盘时打乱整个键集或按行进行打乱。
- 输入:允许您模拟键盘输入,用于演示目的或辅助用户输入。
依赖关系
- 必需
- jQuery 1.4.3+
- jQuery caret(包含在源代码中)
- 可选
- jQuery UI定位工具(可选,如果您自己定位键盘)
- jQuery UI CSS(可自定义)/ Bootstrap CSS
- jQuery mousewheel插件 - 允许使用鼠标滚轮滚动到其他键集
- jQuery UI自动完成小部件 - 与jQuery键盘自动完成扩展一起使用
安装
- 下载包含所有文件的 zip 或 tar.gz,用于浏览器中使用。
- 使用来自 CDNJS 的文件。
- 使用 npm 通过
npm install virtual-keyboard进行安装。 - 与以下一起使用
- 通过 ng-virtual-keyboard by antonio-spinelli 通过
npm install ng-virtual-keyboard。 - ember-virtual-keyboard by SleepyWerewolf。
- react-virtual-keyboard by Utzel-Butzel 通过
npm install react-virtual-keyboard。 - VueVirtualKeyboard 由 relzhong 提供,通过
npm install --save vue-virtual-keyboard安装。 - Ruby on Rails 的 virtual_keyboard 由 scicasoft 提供,通过
gem install virtual_keyboard安装。 - VR Toolbox.
- 通过 ng-virtual-keyboard by antonio-spinelli 通过
TypeScript
您可以使用 TypeScript。安装 TypeScript 和 @types/virtual-keyboard 作为开发依赖项。
文档
Wiki: 主页 | 常见问题解答 | 设置 | 使用方法 | 选项 ( 布局, 语言, 可用性, 动作 ) | 方法 | 主题 | 日志
待办事项
- 添加输入掩码扩展。我认为我会尝试使其与 此插件 兼容。
允许将键盘附加到 contenteditable 元素。自 v1.27.0 版本起已添加。
已知问题
- 全部:只有类型为 "text","search","url","telephone" 和 "password" 的输入支持光标定位 (参考)。使用此键盘与任何其他输入类型将破坏光标左右移动、退格和删除键(请参阅 问题 #241 了解详细信息)。
- 移动设备:如果按键滞后一个字符,很可能是由于鼠标滚轮插件引起的。请禁用它。请参阅问题 #379 & #411。
- IE 和 Opera
- 在具有多个换行符的文本区域中,当使用鼠标重新定位光标时,光标定位将不正确。
- 使用左右箭头键在具有多个换行符的文本区域中导航时存在问题。当从一行切换到下一行时,光标的行为不像在其他浏览器中那样。您始终可以使用鼠标重新定位光标。
- Opera:在文本区域内部按下 tab 键时,除了 Opera 之外的所有浏览器都会将 tab 添加到虚拟键盘文本区域。
- Safari:请参阅带有锁定输入的 QWERTY 文本区域演示。在使用虚拟键盘键入时,文本将反向输入!这是因为在具有 "readonly" 属性的文本区域中,始终返回光标位置为零。
- 键入扩展:
- 当按下 "Alt" 键时,按键组将更改为 alt 按键组,但焦点将移动到浏览器菜单。快速按下它第二次将返回焦点。这是内置在浏览器中的,并且据我所知,无法在第一次按下 alt 键时自动恢复窗口焦点。
- 按下Alt键尝试输入也不可行,因为Windows操作系统假设你正在尝试输入快捷键以访问浏览器菜单。您仍然可以使用鼠标点击Alt键组的键。
- 当CapsLock开启时,键盘模拟输入会中断。仍在寻找跨浏览器的解决方案。
贡献
- 安装node.js - 这包括
npm(Node包管理器)。 - 在根目录下运行
npm install。 - 运行
npm install -g grunt-cli以安装Grunt命令行界面。 - 对代码进行任何更改。
- 单元测试将在稍后添加。
- 运行
grunt在/dist文件夹中执行新的构建。 - 从非
master分支提交pull请求。
许可
变更日志
以下仅显示最新更改,请参阅wiki日志以查看旧版本。
版本1.30.4(2022-01-24)
- 在初始化时保存并恢复焦点。关闭问题#811
版本1.30.3(2021-03-14)
- 光标:修复textarea中的光标定位