【发布时间】:2016-03-17 15:06:02
【问题描述】:
这是关于具有字典查找功能的常规响应式网站。该页面由一个输入文本框和一个相邻的提交按钮组成。目前,如果您在移动浏览器中打开页面并点击文本框,软键盘会自动启动,这是可取的。但不可取的是,即使在用户点击软键盘上的enter 键后,键盘仍保持打开状态。我知道必须有一些方法来改变它。这种情况是否需要特殊的 Android/iOS 特定库或其他东西?我可以在按钮的onclick() 中添加一些东西来实现它吗?如果是这样,可以使用什么功能?请注意,当点击页面提交按钮时,键盘消失得很好......它只是软键盘输入键,即使它成功提交了表单,它也不会对其自身产生影响。
我尝试了以下方法但失败了:
function lookup_check(lookupterm){
close_kb();
$('#word').blur();
if(lookupterm != ""){ lookup_word(lookupterm); }
else{
var testing = $('#word');
testing.addClass('empty');
setTimeout(function(){ testing.removeClass('empty'); },500);
}
}
调用上述函数的 HTML 如下:
<button class="btn btn-lg btn-primary lookup-submit" type="submit" id="lookup" onclick="lookup_check($('#word').val());" style="display: inline-block;">Lookup</button>
P.S.:我们非常确定,这是一个桌面网站,而不是一个应用程序。
更新:@NovaLogic 提出的线程上已接受的答案已被声明为不能在所有版本的 Android 中始终如一地工作。此外,我正在寻找一些方法来实现这一点,不仅在 Android 上,而且在 iOS/Windows 设备上。所以,不,这个问题不是重复的。
【问题讨论】:
-
你可以使用
$(form).on('submit', function() { $(input).blur(); }); -
@Novocaine:我已经尝试过
$('#word').blur;技巧,希望它能将焦点从文本框移开,但键盘保持不动。 :// -
这听起来像是您的测试设备中的一个错误。这在过去对我有用。
-
您实际上使用的是
$('#word').blur();而不是您上面输入的$('#word').blur;,对吗?
标签: javascript jquery