iPad Safari - 让键盘消失

tes*_*dtv 60 mobile-safari ipad ios

在iPad Safari浏览器中,当我将焦点从文本框更改为下拉列表时,键盘仍然存在...是否有某种方式(可能使用Javascript)当用户从文本框中模糊时我可以隐藏键盘?

间接地说,我正在寻找相当的(但在Mobile Safari中)

[tempTextField resignFirstResponder]; 
Run Code Online (Sandbox Code Playgroud)

小智 154

我在http://uihacker.blogspot.com/2011/10/javascript-hide-ios-soft-keyboard.html找到了解决方案.基本上,只需这样做(它对我有用):

var hideKeyboard = function() {
    document.activeElement.blur();
    $("input").blur();
};
Run Code Online (Sandbox Code Playgroud)

  • 你为什么要模糊`document.activeElement.blur();`和所有输入?对我来说,这只适用于`document.activeElement.blur();` (3认同)
  • 此解决方案不适用于移动铬.重复.什么都不行. (2认同)

luc*_*rio 20

在我的网站上成功登录后,我有iOS 5.0的iPad没有隐藏键盘.我通过简单地执行javascript命令解决了

document.activeElement.blur();
Run Code Online (Sandbox Code Playgroud)

成功登录后,现在键盘被正确隐藏:-)


BLS*_*lly 15

我知道这是一个稍微陈旧的问题,但我今天发现了答案,答案很简单......我花了更多的时间来承认解决这个问题;)

要防止显示键盘:

<input type="text" name="someInput" />
Run Code Online (Sandbox Code Playgroud)

当你想做一些像使用jQuery UI datepicker的事情时......

添加一个readonly属性,如下所示:

<input type="text" name="someInput" readonly="readonly" />
Run Code Online (Sandbox Code Playgroud)

如果您想要关注JS关闭的人,您可以随时取消该属性并将其添加到您的代码中:

$('[name=someInput]').attr('readonly','readonly');
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助.

这是一个展示这个概念的jsFiddle:http://jsfiddle.net/3QLBz/5/


zen*_*non 5

$("#txt").on("focus", function(){
    $(this).blur();
});
Run Code Online (Sandbox Code Playgroud)

适用于IPad上的jquery UI datepicker