在 iPhone 上打开键盘时 Cordova 应用程序滚动
Posted
技术标签:
【中文标题】在 iPhone 上打开键盘时 Cordova 应用程序滚动【英文标题】:Cordova application scrolls when keyboard is open on iPhone 【发布时间】:2015-10-07 16:19:56 【问题描述】:我目前正在构建一个基于 Cordova 的 Web 应用程序。
当用户决定关注文本框并且键盘打开时,整个应用程序正在向上滚动,包括背景和所有固定元素。
在下面的例子中,背景是应用在 html 标签上的,并且 logo 是固定位置的。
html
background: url('background.jpg') center center;
background-size: cover;
height: 100vh;
overflow: hidden;
.logo
top: 80px;
position: fixed;
text-align: center;
有没有办法使用基于网络的科尔多瓦应用程序,当键盘打开时只将表单移动到顶部,而不移动背景,也不移动徽标?
我希望键盘缩小视图,将其调整为更小的尺寸,而不是使用右侧的滚动条将其向上推。
谢谢。
【问题讨论】:
【参考方案1】:您可以为此使用keyboard plugin。安装插件,然后在 config.xml 文件中设置此首选项。
<preference name="KeyboardShrinksView" value="true" />
它通过将 webview 缩小到键盘上方的空间来工作,所以这应该会给你描述的行为。
【讨论】:
在 android InAppBrowser 中运行良好,但我无法在 ios InAppBrowser 中运行。你知道这些设置是否应该在 InAppBrowser 中起作用吗? Android 默认情况下对所有 webview 都具有KeyboardShrinksView
行为。此插件仅将行为添加到 iOS 上的主 webview。以上是关于在 iPhone 上打开键盘时 Cordova 应用程序滚动的主要内容,如果未能解决你的问题,请参考以下文章
到达下拉列表时单击iphone移动箭头键,应显示下拉列表内容
在 PhoneGap 应用程序中以编程方式在 iPhone 上显示软键盘?