是否可以通过代码控制iPad Safari中的键盘显示(即显示/隐藏)?
我有2个表单字段; 1.文字框(比如姓名) 2.选择列表/下拉列表(说出状态)
我的问题是当用户将焦点从名称移动到状态时,键盘仍然存在。为什么会这样?当焦点移动到下拉列表时如何隐藏键盘?
谢谢。
答案 0 :(得分:2)
我遇到了一个非常类似的问题,不确定我的解决方案是否适合您。
在我的情况下,我在表单中有一个文本输入。提交时,我正在使用e.preventDefault()
来阻止页面导航。我相信这也有阻止隐藏键盘的默认操作的效果。
为了解决这个问题,我在提交表单时添加了一个明确的input.blur()
。这似乎足以让safari移除键盘。
希望这有帮助!
答案 1 :(得分:1)
我有同样的问题。我有一个表单,当键入字段时键盘应该折叠(不是ipad上的原生行为)和焦点选择字段时。对我来说唯一的解决方案是创建隐藏的输入
<input type="hidden" id="blurInput" />
和焦点事件的javascript代码处理程序:
$element = $(event.target);
if($element.is('select')) {
$('#blurInput').blur();
$element.focus();
}
如果您只想模糊输入字段,另一个解决方案可以完美运行,但在输入和选择之间它会失败
document.activeElement.blur();
$('input').blur();