繁体   English   中英

IOS禁用键​​盘选项卡箭头

[英]IOS disable the keyboard tab arrows

我需要使用JavaScript或甚至是基于Web的应用程序元标记(如果有的话)禁用IOS上的键盘选项卡箭头。

我尝试了一些选项但在选择菜单时遇到了问题。

我也无法将所有tabindex恢复为-1,因为这会损坏桌面和其他设备上的标签功能。

任何帮助,将不胜感激。

这是我为跳转到readonly的字段所做的一个例子。

 $(document).ready(function() { $('input, textarea, select').on('focus', function() { $('input, textarea').not(this).attr('readonly', 'readonly'); $('select').not(this).attr("disabled", "disabled"); }); $('input, textarea, select').on('blur', function() { $('input, textarea').removeAttr("readonly"); $('select').removeAttr("disabled"); }); }); 

我实际上找到了一种方法来完成这项工作。

我正在做的是检测仅IOS设备,然后禁用选项卡输入字段。

我想我可以更进一步,检测IOS和野生动物园。

 $(document).ready(function() { // Detect IOS if (navigator.userAgent.match(/(iPod|iPhone|iPad)/)) { // Only active input fields in use $('input, textarea').on('focus', function() { $('input, textarea').not(this).attr("readonly", "readonly"); }); $('input, textarea').on('blur', function() { $('input, textarea').removeAttr("readonly"); }); // Disable tabing to select box's $('select').attr('tabindex', '-1'); } }); 

这是一个无法通过设置html属性,元标记或监听特殊事件来解决的问题(这些箭头没有事件......)。

唯一的选择是在输入被聚焦时禁用表单中的所有其他输入,以便没有选项卡的输入。

而不是编写这个代码并重新发明轮子,这里是一个链接到jquery模块已经这样做: https//github.com/ChrisWren/touch-input-nav

如果你想要一个纯粹的js解决方案,请看看: https//github.com/ChrisWren/touch-input-nav/blob/master/touch-input-nav.js没有那么多需要重写的代码所以这应该不是问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM