如何在焦点()上以编程方式隐藏jquery mobile中的键盘

问题描述 投票:0回答:4

我想在 Focus() 上隐藏键盘,但是当

$(".ui-input-text").focus();
时它会自动打开键盘。

我只想隐藏在特定屏幕中,我用

document.activeElement.blur();
进行了测试 但它也没有将 focus() 放在输入上。

android jquery jquery-mobile jquery-plugins cordova
4个回答
13
投票

提交表单时,iOS 键盘有时可能不会自动关闭。这是一个相当大的可用性问题,因为用户不应该被要求在他们不希望需要这样做的用例中手动关闭键盘。

对此的一个简单解决方案可以通过调用 document.activeElement 上的模糊方法来实现,该方法有效地允许人们以编程方式隐藏键盘:

// automatically close the keyboard on iOS
document.activeElement.blur();

有关 HTML5 和移动应用程序事件的更多信息..

http://www.ericfeminella.com/blog/2012/12/27/ios-html5-input-element-tips/


1
投票

试试这个:

$('#yourElement').blur();

它将隐藏虚拟键盘。


1
投票

这里

var hideKeyboard = function() {
    document.activeElement.blur();
    $("input").blur();
};

已编辑: 另一种选择

$('.clr').after('
        //<input tyep="checkbox" 
        <input type="checkbox"
               id="focusable" 
               style="height:0;
               margin- left:-200px;
               clear:both;" />');
$('#focusable').focus(); `

0
投票

这是否过于简单化了? :

<input id="x" inputmode="none" value="x">

我与脚本纠缠了几个小时,发现这是一种在输入用于其他内容时隐藏键盘的更简单、更可靠的方法。

© www.soinside.com 2019 - 2024. All rights reserved.