Cordova Phonegap表单输入框无法在iOS上使用



无法在输入表单框中输入文本(未显示键盘)。输入框似乎无响应性,因为未显示任何提示,也不显示键盘(APP)。这适用于Cordova Android(模拟器和应用程序),以及OSX,Android和iOS的每个标准浏览器。

<html>
<head>
<meta content='width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0' name='viewport' />
<meta http-equiv="Content-Security-Policy" content="default-src 'self' data: gap: ; style-src 'self' 'unsafe-inline' ; media-src *;script-src 'self' 'unsafe-inline' 'self' *" />
<title>Input Test</title>
</head>
<body>
<form name="form1" id="form1">
<input name="auto" type="text" id="idauto" style="-webkit-user-select: auto;"><br>
<input name="text" type="text" id="idtext" style="-webkit-user-select: text;"><br>
<input class="newinput" onclick="this.focus();" type="email" id="mix" name="email" value="" autocorrect="off" autocapitalize="off" required="" placeholder="Enter E-mail address">
</form>
<script src="cordova.js"></script>
</body>
</html>

***也只尝试了1个输入,结果相同,因此显示多个变化的作用相同。

科尔多瓦:6.3.1

模拟器:iPhone-se,10.1模拟器(通过iTunes Connect在实际iOS应用中验证相同的行为,因此请坚持使用模拟器尝试修复)。

我的cordova config.xml首选项是:

<preference name="permissions" value="none" />
<preference name="webviewbounce" value="false" />
<preference name="detect-data-types" value="true" />
<preference name="stay-in-webview" value="false" />
<preference name="android-minSdkVersion" value="16" />
<preference name="android-targetSdkVersion" value="22" />
<preference name="loadUrlTimeoutValue" value="700000" />
<preference name="SplashScreenDelay" value="2000" />
<preference name="SplashScreen" value="screen" />
<preference name="StatusBarOverlaysWebView" value="false"/>
<preference name="StatusBarBackgroundColor" value="#000000"/>
<preference name="StatusBarStyle" value="lightcontent" />
<!-- iOS only preferences -->
<preference name="AppendUserAgent" value="My Browser" />
<preference name="AllowInlineMediaPlayback" value="true"/>
<preference name="BackupWebStorage" value="local"/>
<preference name="CordovaWebViewEngine" value="CDVUIWebViewEngine" />
<preference name="deployment-target" value="7.0" />
<preference name="EnableViewportScale" value="true"/>
<preference name="ErrorUrl" value="myErrorPage.html"/>
<preference name="GapBetweenPages" value="0"/>
<preference name="MediaPlaybackAllowsAirPlay" value="false"/>
<preference name="MediaPlaybackRequiresUserAction" value="true"/>
<preference name="OverrideUserAgent" value="Mozilla/5.0 My Browser" />
<preference name="PageLength" value="0"/>
<preference name="PaginationBreakingMode" value="page"/>
<preference name="PaginationMode" value="unpaginated"/>
<preference name="SuppressesIncrementalRendering" value="true"/>
<preference name="SuppressesLongPressGesture" value="true" />
<preference name="Suppresses3DTouchGesture" value="true" />
<preference name="target-device" value="universal" />
<preference name="TopActivityIndicator" value="white"/>
<preference name="UIWebViewDecelerationSpeed" value="fast" />

Cordova插件(安装了此示例是一个更大的项目的片段)。

cordova-plugin-device 1.1.3 "Device"
cordova-plugin-facebook4 1.7.4 "Facebook Connect"
cordova-plugin-splashscreen 2.1.0 "Splashscreen"
cordova-plugin-statusbar 2.2.0 "StatusBar"
cordova-plugin-whitelist 1.1.0 "Whitelist"

抑制3dtouchgesture禁用onclick处理程序,该处理程序有效地禁用输入框。

修复,删除偏好或将其设置为" false"

<preference name="Suppresses3DTouchGesture" value="false" />

最新更新