使用 phonegap 防止键盘在 iOS 应用程序中向上推 webview

Posted

技术标签:

【中文标题】使用 phonegap 防止键盘在 iOS 应用程序中向上推 webview【英文标题】:Prevent Keybord push up webview at iOS app using phonegap 【发布时间】:2016-03-09 09:37:05 【问题描述】:

每当我在 ios 应用程序中单击文本字段或数据选择器时,导航栏都会随着滚动而向上移动。键盘向上时可能是webview正在上升。 当键盘未启动时,屏幕如下图所示:

当我触摸文本字段“在此处输入数字”时,键盘向上移动,如下图所示:

与其他具有数据选择器的页面相同,导航栏无法像下面的屏幕截图那样固定。

【问题讨论】:

【参考方案1】:

我不建议在任何网络应用程序中使用 setTimeout。如果您在模糊事件上使用 jquery,请尝试“.scrollTop(0)”。

我曾经遇到过类似的问题,这不是最好的解决方案,但我记得我更改了我的应用程序配置,所以它不是全屏的(我将它设置为显示顶部栏)并且解决了我的问题。这是某些 phonegap/cordova 版本的问题。

【讨论】:

我也更改了我的应用程序设置,尝试不全屏但它没有解决我的问题。你能给我你的代码的演示链接吗?【参考方案2】:

试试这个

$('input').on('focus', function(e) 
e.preventDefault();
e.stopPropagation();
setTimeout(
    function()
        windows.scrollTo(0, 0);
    , 100);
);

【讨论】:

以上是关于使用 phonegap 防止键盘在 iOS 应用程序中向上推 webview的主要内容,如果未能解决你的问题,请参考以下文章

如何在 iOS 中使用 Phonegap 配置键盘?

如何防止我的 Phonegap 应用在 ios 上全屏播放视频?

没有焦点的Phonegap iOS键盘事件

如何防止meteor.local的负载(使用phonegap构建ios应用程序时)

iOS PhoneGap。防止 iFrame 缓存

如何在iOS 8上的Cordova / PhoneGap应用程序中隐藏键盘表格附件栏? [重复]