我正在使用 jQuery、 jqTouch 和 phonegap 编写一个应用程序,遇到了一个长期存在的问题,当用户使用软键盘上的 Go 按钮提交表单时会出现这个问题。
虽然使用 $('#input_element_id').focus()
可以很容易地使光标移动到适当的表单输入元素,但橙色的轮廓高亮始终返回到表单上的最后一个输入元素。(当使用表单提交按钮提交表单时,突出显示不显示。)
我需要的是找到一种方法,要么完全禁用橙色突出显示,要么使其移动到相同的输入元素作为光标。
到目前为止,我已经尝试在 CSS 中添加以下内容:
.class_id:focus {
outline: none;
}
这个可以在 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);
}
毫无效果。
我还尝试了 AndroidManifest.xml
文件中的以下每一项:
android:imeOptions="actionNone"
android:imeOptions="actionSend|flagNoEnterAction"
android:imeOptions="actionGo|flagNoEnterAction"
这些都没有任何效果。
更新: 我已经做了一些更多的故障排除,迄今为止已经发现:
大纲属性只能在 Chrome 上使用,不能在 Android 浏览器上使用。
-webkit-tap-highlight-color
属性实际上可以在 Android 浏览器上使用,但不能在 Chrome 上使用。它禁用焦点和点击的高光。
-webkit-focus-ring-color
属性似乎在两个浏览器上都不能工作。