Я кодирую приложение, используя 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
Свойство не похоже на работу в любом браузере.