Android Browser textarea прокручивается повсюду, непригодна для использования

Итак, я создал красивое, блестящее приложение HTML5, предназначенное для мобильных браузеров Safari и Android по умолчанию. Версия Android, на которую я тестирую, - 2.1 и 2.2.

У моего приложения есть текстовое поле на одной из его страниц, и это текстовое поле имеет тенденцию иметь хороший объем текста в нем время от времени. В основном это поле для написания свободной формы.

Это работает как ожидается в iOS. Однако на Android, когда вы печатаете, экран прокручивается вверх и вниз по каждому нажатию клавиши, часто вы не можете видеть, что именно вы печатаете по мере ввода, и у вас начинается головокружение от всех прыжков. Кроме того, если содержимое в текстовом поле превышает его высоту, в нем нет возможности прокручиваться.

Даже не начинайте меня в ландшафтном режиме. Вышеупомянутые проблемы еще более выражены.

Это похоже на ошибку с Android, поскольку в моем текстовом поле действительно нет ничего необычного. Я разделил его на простые предметы, и он ведет себя одинаково.

Хотите узнать, понравилось ли кому-нибудь еще это удовольствие с их текстовыми полями на Android, и может быть, может быть, дать совет или хотя бы сопереживать?

Кажется, Google в основном решил это в веб-интерфейсе Gmail для Android. Я предполагаю, что некоторые JS-магии происходят, потому что моя разметка /CSS идентична.

Ответы

Ответ 1

РЕШЕНИЕ: 3D-веб-кит нарушен в Android, это вызывает эту проблему. Убедитесь, что вы не используете -webkit-transform: translate3d (0, 0, 0); или -webkit-backface-visibility: hidden; на все, что связано с входами.: (

Ответ 2

Если возможно, вы можете заблокировать прокрутку экрана во время ввода пользователем, установив свойство переполнения тела "скрытым" - вы можете выборочно включать/отключать его при событиях фокуса/размытия. Конечно, это означает, что ваш пользователь не сможет прокручивать при вводе

Ответ 3

Нет волшебного ответа. Взаимодействие с клавиатурой на клавиатуре Android с веб-формами просто ужасает. Вы должны тщательно прошивать иглу, чтобы она работала правильно, а поведение клавиатуры неточно в версиях Android. Но это возможно с большим количеством работы (см. нашу систему Sencha Touch для того, что возможно сегодня - другие мобильные веб-фреймворки также решают одни и те же проблемы).

Ответ 4

Я испытываю такое поведение почти на каждой странице. Здесь на StackOverflow, в блоге wordpress и многом другом.

Я могу только понять, что это ошибка/проблема использования в браузере android, поэтому я предпочитаю собственный пользовательский интерфейс/приложение:)