输入字段未集中在单击上并消失在键盘后面
Input field is not getting focused on click and disappear behind the keyboard
我正在开发基于 jQuery 的应用程序。问题是我有一个输入字段,我点击它,我的 phone 弹出窗口的键盘。但是,该字段仍在键盘后面,我需要滚动屏幕才能看到该字段。
在我的 HTML 页面中,我执行了以下操作:
<script>
$('#div1').click(function() {
$('#p2EmpContPer').focus();
});
</script>
<div id= "div1" class="float-right mobile-input-container">
<input id="p2EmpContPer" type="text" class="font14 format-decimal inline-block" value="" />
</div>
我想要的是当我点击输入字段时,我需要弹出键盘(这已经可以工作)并且应用程序将专注于该字段(我无法完成)。
问题仅出现在 Blackberry 设备上。
该应用程序是使用 Cordova 构建的。
您可以简单地告诉您的 html 滚动到输入字段的偏移量,如下所示:
$('#div1').click(function () {
var offsetTop = $('#p2EmpContPer').offset().top;
$('#p2EmpContPer').focus();
$('html, body').animate({
scrollTop: offsetTop - 20
});
});
勾选Fiddle
顺便说一句:我在您的代码中添加了几个测试 Div 以使效果更明显。
我正在开发基于 jQuery 的应用程序。问题是我有一个输入字段,我点击它,我的 phone 弹出窗口的键盘。但是,该字段仍在键盘后面,我需要滚动屏幕才能看到该字段。
在我的 HTML 页面中,我执行了以下操作:
<script>
$('#div1').click(function() {
$('#p2EmpContPer').focus();
});
</script>
<div id= "div1" class="float-right mobile-input-container">
<input id="p2EmpContPer" type="text" class="font14 format-decimal inline-block" value="" />
</div>
我想要的是当我点击输入字段时,我需要弹出键盘(这已经可以工作)并且应用程序将专注于该字段(我无法完成)。
问题仅出现在 Blackberry 设备上。
该应用程序是使用 Cordova 构建的。
您可以简单地告诉您的 html 滚动到输入字段的偏移量,如下所示:
$('#div1').click(function () {
var offsetTop = $('#p2EmpContPer').offset().top;
$('#p2EmpContPer').focus();
$('html, body').animate({
scrollTop: offsetTop - 20
});
});
勾选Fiddle
顺便说一句:我在您的代码中添加了几个测试 Div 以使效果更明显。