我正在使用jQuery,jqTouch和phonegap编写应用程序,并且遇到了一个持久性问题,当用户使用软键盘上的Go按钮提交表单时会出现该问题.
虽然通过使用很容易使光标移动到适当的表单输入元素$('#input_element_id').focus(),但橙色轮廓突出显示总是返回到表单上的最后一个输入元素.(使用表单提交按钮提交表单时,不会显示突出显示.)
我需要的是找到一种完全禁用橙色突出显示的方法,或者让它移动到与光标相同的输入元素.
到目前为止,我已经尝试将以下内容添加到我的CSS中:
.class_id:focus {
outline: none;
}
Run Code Online (Sandbox Code Playgroud)
这适用于Chrome,但不适用于模拟器或手机.我也尝试过编辑jqTouch theme.css来阅读:
ul li input[type="text"] {
-webkit-tap-highlight-color: rgba(0, 0, 0, 0); and
-webkit-focus-ring-color: rgba(0, 0, 0, 0);
}
Run Code Online (Sandbox Code Playgroud)
没有效果.我还尝试了以下每个AndroidManifest.xml文件的添加:
android:imeOptions="actionNone"
android:imeOptions="actionSend|flagNoEnterAction"
android:imeOptions="actionGo|flagNoEnterAction"
Run Code Online (Sandbox Code Playgroud)
这些都没有任何影响.
更新:我已经做了一些更多的故障排除,迄今为止发现:
outline属性仅适用于Chrome,不适用于Android浏览器.
该-webkit-tap-highlight-color酒店实际上可以在Android浏览器上运行,但不在Chrome上.它会在焦点和点击时禁用高亮显示.
该-webkit-focus-ring-color属性似乎不适用于任何一种浏览器.
我的android/phonegap应用程序上的软"NUMERIC"键盘出现问题.
我的目标是:在html5页面上创建一个简单的表单(我将使用phonegap),用户输入一个使用0-9个字符的数字.为此,我使用了type = number的输入字段,这会在我的Android手机上生成正确的软键盘.
不幸的是,我在尝试检测数字键盘上按下回车键时感到非常沮丧.通常在按下时,键盘就会消失,而不是提交表格.但是,如果我将输入的类型更改为"text",则enter键将按预期工作并提交表单.
如何使用数字键盘重现表单提交?
供参考,请参阅:http: //jsfiddle.net/Ua9yw/13/
工作进入提交行为:
<form> <input type="text"/> </form>
<form id="form1">
<input type="text"/>
<input type="submit"/>
</form>
Run Code Online (Sandbox Code Playgroud)
不工作按钮行为:
<form> <input type="number"/> </form>
<form id="form1">
<input type="number"/>
<input type="submit"/>
</form>
Run Code Online (Sandbox Code Playgroud)