Я работаю над веб -приложением, отвечающим у любителей, но у меня возникают проблемы с акцентом на iOS. Я бы хотел, чтобы ввод прокручивал чуть выше клавиатуры iOS на фокусе (или не прокручивать), но iOS хочет сосредоточить этот элемент управления, несмотря ни на что. < /P>
в прикрепленном GIF, вы можете увидеть поведение, которое я вижу, а затем я прокручиваю в конце, чтобы указать, что я хотел бы произойти, как только событие фокуса будет запускается. < /P>
Одна вещь, которую я нашел такую работу, но я хотел бы Что -то лучше: работает следующий код, но имеет заметную задержку между свитком, который вы видите в GIF, и окном, возвращающимся в положение, которое я бы хотел. Кроме того, если я настраиваю время settimeout () ниже ~ 400, он не работает. Есть ли у iOS -немного блока во время его фокусировки шишки? < /P>
Код: Выделить всё
element.addEventListener('focus', (e) => { setTimeout(() => { window.scroll(0,0) }, 500) });
< /code>
< /p>
update #1 < /strong> < /p>
До сих пор единственное решение, которое я пробовал, - это следующее, которое кажется довольно резким (где Scrolllock Код: Выделить всё
document.addEventListener('scroll', (e) => {
if (scrollLock && document.documentElement.scrollTop > 100) {
document.documentElement.scrollTop = 100;
}
});
Подробнее здесь: https://stackoverflow.com/questions/607 ... nput-focus
Мобильная версия