Изменить размер окна Safari с помощью jquery, когда отображается клавиатура ⇐ Jquery
-
Anonymous
Изменить размер окна Safari с помощью jquery, когда отображается клавиатура
Прежде всего, я знаю, что по этой теме задают много вопросов. Я ищу уже пару недель, но не могу найти подходящего для меня ответа.
У меня есть веб-сайт с полем ввода внизу. Сайт имеет очень простой дизайн.
[*]Заголовок [*]Содержимое (динамическая высота) [*]Нижний колонтитул с полем ввода
Проблема проста, но раздражает. Когда пользователь нажимает/нажимает на поле ввода в веб-браузере компьютера, все работает нормально. При нажатии на поле ввода в мобильном веб-браузере все кроме Safari уменьшают высоту элемента содержимого.
Когда вы нажимаете на него в Safari, поскольку поле ввода находится внизу, вся страница прокручивается вверх, при этом пользователь теряет часть заголовка и содержимого (переполнение).
Как я могу решить эту проблему? Могу ли я поручить Safari пересчитать раскладку при открытии клавиатуры? Я пробовал так много вещей, таких как фиксированный макет (боль для меня), событие срабатывания при срабатывании поля ввода, изменение размера содержимого div (но на разных устройствах разные клавиатуры), изменение размера документа, тела и контейнер div (где все остальное находится внутри).
Изображение, на котором точно видна проблема [источник] Также в этом источнике есть пара обходных путей и трюков. Но я не могу заставить их работать на меня. Я хочу добиться того, чтобы нижний колонтитул и заголовок оставались фиксированными, а размер содержимого уменьшался. Даже если я изменю высоту элемента div с помощью jquery/css, при отображении клавиатуры под нижним колонтитулом будет пустое пространство.
Я прочитал много сообщений, кода, статей, таких как средние, старые сообщения о переполнении стека и код jquery на разных веб-сайтах, но не могу понять это правильно.
Есть ли простой, но эффективный способ обойти эту проблему? Если возможно, без какого-либо кода, который излишне усложняет ситуацию. Я думаю, что я могу поручить Safari пересчитать высоту области просмотра и позволить css сделать свое дело при появлении клавиатуры?
Если нужен пример кода, я рад его предоставить.
Заранее спасибо.
Что я пробовал:
[*]читаю статьи [*]гуглил около недели [*]проверьте множество jquery, css и плагинов из разных источников. [*]составьте небольшой пример, чтобы найти источник проблемы. [*]тестируйте в разных браузерах на разных устройствах и ОС
Прежде всего, я знаю, что по этой теме задают много вопросов. Я ищу уже пару недель, но не могу найти подходящего для меня ответа.
У меня есть веб-сайт с полем ввода внизу. Сайт имеет очень простой дизайн.
[*]Заголовок [*]Содержимое (динамическая высота) [*]Нижний колонтитул с полем ввода
Проблема проста, но раздражает. Когда пользователь нажимает/нажимает на поле ввода в веб-браузере компьютера, все работает нормально. При нажатии на поле ввода в мобильном веб-браузере все кроме Safari уменьшают высоту элемента содержимого.
Когда вы нажимаете на него в Safari, поскольку поле ввода находится внизу, вся страница прокручивается вверх, при этом пользователь теряет часть заголовка и содержимого (переполнение).
Как я могу решить эту проблему? Могу ли я поручить Safari пересчитать раскладку при открытии клавиатуры? Я пробовал так много вещей, таких как фиксированный макет (боль для меня), событие срабатывания при срабатывании поля ввода, изменение размера содержимого div (но на разных устройствах разные клавиатуры), изменение размера документа, тела и контейнер div (где все остальное находится внутри).
Изображение, на котором точно видна проблема [источник] Также в этом источнике есть пара обходных путей и трюков. Но я не могу заставить их работать на меня. Я хочу добиться того, чтобы нижний колонтитул и заголовок оставались фиксированными, а размер содержимого уменьшался. Даже если я изменю высоту элемента div с помощью jquery/css, при отображении клавиатуры под нижним колонтитулом будет пустое пространство.
Я прочитал много сообщений, кода, статей, таких как средние, старые сообщения о переполнении стека и код jquery на разных веб-сайтах, но не могу понять это правильно.
Есть ли простой, но эффективный способ обойти эту проблему? Если возможно, без какого-либо кода, который излишне усложняет ситуацию. Я думаю, что я могу поручить Safari пересчитать высоту области просмотра и позволить css сделать свое дело при появлении клавиатуры?
Если нужен пример кода, я рад его предоставить.
Заранее спасибо.
Что я пробовал:
[*]читаю статьи [*]гуглил около недели [*]проверьте множество jquery, css и плагинов из разных источников. [*]составьте небольшой пример, чтобы найти источник проблемы. [*]тестируйте в разных браузерах на разных устройствах и ОС
Мобильная версия