我正在使用 jQuery、jqTouch 和 phonegap 编写应用程序,并且遇到了一个持久性问题,当用户使用软键盘上的 Go 按钮提交表单时会出现该问题。
虽然使用 很容易让光标移动到适当的表单输入元素$('#input_element_id').focus()
,但橙色轮廓突出显示始终返回到表单上的最后一个输入元素。(使用表单提交按钮提交表单时,突出显示不显示。)
我需要找到一种方法,要么完全禁用橙色突出显示,要么使其移动到与光标相同的输入元素。
到目前为止,我已经尝试将以下内容添加到我的 CSS 中:
.class_id:focus {
outline: none;
}
这适用于 Chrome,但不适用于模拟器或我的手机。我还尝试编辑 jqTouchtheme.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"
这些都没有任何影响。
更新:我对此进行了更多故障排除,迄今为止发现:
outline 属性仅适用于 Chrome,不适用于 Android 浏览器。
该
-webkit-tap-highlight-color
属性实际上确实适用于 Android 浏览器,但不适用于 Chrome。它会禁用焦点和点击时的突出显示。该
-webkit-focus-ring-color
属性似乎不适用于任一浏览器。