До iOS8 использование метода Javascript .focus()
на входном элементе не будет иметь эффекта (виртуальная клавиатура не будет отображаться). После последней версии iOS 8 запуск метода .focus()
, казалось, не повлиял на загрузку страницы, но как только пользователь коснулся в любом месте экрана, виртуальная клавиатура мгновенно появится и прокрутит страницу до элемента в фокусе. (Это также проблема, когда я использую атрибут HTML "автофокус" )
Это изменение вызвало проблемы с пользователями iOS8 на моем сайте. Когда пользователь пытается щелкнуть кнопку на моей странице, внезапное появление прокрутки и клавиатуры заставляет их непреднамеренно нажать кнопку, которая была ниже на экране.
Я предполагаю, что это ошибка в iOS8 и не была преднамеренной функцией, мой вопрос - это то, что является наиболее эффективным решением для устранения этой проблемы?
Нужно ли проверять navigator.userAgent
, чтобы узнать, является ли устройство iOS8, каждый раз, когда я использую метод .focus()
?