Предотвращение отжимания страниц / просмотра при открытии клавиатуры в iOS - PullRequest
0 голосов
/ 18 июня 2019

Я работаю над формой с фиксированным заголовком (для кнопок действий) и столкнулся с различным поведением в iOS (как Safari, так и Chrome). Проблема заключается в том, что ОС при каждом открытии клавиатуры открывает весь веб-просмотр, скрывая заголовок, который должен быть всегда видимым.

Испытано несколько решений 1 , 2 (часть JavaScript / jQuery) и несколько других подобных опций. Никто из них не решает это должным образом. Я не могу использовать нативную / гибридную поддержку, как упоминалось здесь .

Ниже я попробовал -

Поведение по умолчанию - Представление прокручивается вверх, скрывая заголовок

enter image description here

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

enter image description here

// tried code to override iOS push behaviour
$("body").on("focus", "input, textarea", function(event) {
  event.stopPropagation(); // this can be ignored
  let winScroll = window.scrollY;
  window.scrollTo({
    top: winScroll
  });
});

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...