События касания браузера Android перестают обновляться, в т.ч. холст/элементы -Как обойти это?

В некоторые родные браузеры Android, касаясь страницы, кажется, останавливают обновление дисплея до тех пор, пока палец не будет отпущен.. Это происходит как для анимации на основе элементов html (, переключения классов ), так и для анимации на основе холста. Однако это не останавливает нормальное выполнение js, а другие события запускаются как обычно. На устройствах с этой проблемой также работает браузер дельфинов (, а не Firefox ).

Для Touchstart/move сработали preventDefault (), а также stopPropergation (), cancelBubble = true; и e.returnValue = false;. В CSS webkit выделение также было отключено. Страница не будет прокручиваться.

Аналогичный вопрос был задан здесь: Блокирует ли браузер Android DOM при touchStart?

но я хотел бы узнать, можно ли преодолеть это поведение, или, по крайней мере, узнать, какие устройства будут затронуты проблемой, это проблема устройства или версии Android? Если вы не можете ответить на вопрос, запустите демонстрацию и сообщите о своем опыте вместе с моделью вашего устройства и пользовательским агентом (, отображаемым внизу демонстрационной страницы ), поскольку комментарий может помочь другим или мне ответить на вопрос.

Вот демонстрация и шаги по воспроизведению поведения. QR-код для ссылки можно найти здесь https://s3-eu-west-1.amazonaws.com/canvas-test-pd/tmp.png.

https://s3-eu-west-1.amazonaws.com/canvas-test-pd/index.html

Веб-страница имеет холст вверху и блок с фоновым изображением внизу. Каждую секунду холст очищается и отображается другое изображение, а класс div переключается (, оба переключаются между 0 и 1 pngs ). Как только это произойдет несколько раз, поместите палец на холст (в верхнюю серую рамку )и удерживайте его там.Подождите, чтобы увидеть, продолжается ли анимация (, иногда она повторяется один или два раза, а затем останавливается ), и есть ли какие-либо визуальные искажения.

Обновление Похоже, что для Galaxy Tab под управлением 3.2 требуются обработчики для сенсорного начала/конца документа, а не просто обязательные элементы div для продолжения обновления экрана. Спасибо Джимпик.

Я начинаю подозревать, что проблема связана со скинами производителей, хотя доказать это сложно.

9
задан Community 23 May 2017 в 12:24
поделиться