我有一个使用jQuery Mobile的应用程序。
在Chrome(在Android上)进行测试时,当键盘打开时,位于页面底部的部分输入会自动移至顶部。这是我期望的行为。
当我将此网站添加到我的Android的主屏幕时,此行为不起作用,所有文本输入都被键盘隐藏。
我还注意到,当我在Chrome上再次打开相同的应用程序时,在重试基于Webview的应用程序后,现在一切正常。输入不再隐藏。
您是否已经看到过这种错误?
先谢谢
答案 0 :(得分:3)
我为您创建了一个演示,作为替代
我必须添加一个空白框以在底部创建一些空格,然后在您对焦输入时将输入移动到标题,因为它位于底部,因此没有滚动空间。
<强>演示强>
https://jsfiddle.net/fyom081o/
<强>代码强>
$(document).on("focus", "#text-basic", function(event){
var boxheight = $(window).height() - 40;
$("#mycontntent").append("<div id='blank' style='height:"+boxheight+"px;'"+"></div>");
$('html, body').animate({scrollTop: $('#text-basic').offset().top - 100}, 500);
});
$(document).on("focusout", "#text-basic", function(event){
$('#blank').remove();
});
答案 1 :(得分:0)
请在我提出同样的问题时查看答案......
Jquery Mobile 1.4.5 virtual keyboard in the device hides the form inputs at the bottom of the page
我用JQM打开了一个问题,这是我得到的回复。原来这是一个Chrome全屏浏览器错误,与JQM无关......
我可以考虑尝试解决这个问题的唯一方法是像http://jsbin.com/kagidi/9/edit?html,css,output那样解决Chrome主屏幕上的问题,但这并不是一个完整的解决方案,它有一些问题无法真正解决。
当你记住自定义键盘时,无法知道键盘的大小,以及在特定设备上添加到身体的高度,甚至更多。
它需要大量的userAgent嗅探才能使其正常工作
由于这些问题,这并不是我们想要添加到库中的东西。但是,这可能会解决您的问题