Safari в Mac OS (OS X) крадет фокус с ввода пароля, если он <input type = "password" /> - PullRequest
0 голосов
/ 04 июля 2019

У меня есть следующая проблема:

У меня есть форма, в которой я редактирую некоторые детали публикации вакансии.

Я добавил <input type="password" /> в форму, которая должна принимать одноразовый пароль, который пользователь получает по электронной почте, чтобы изменения могли выполняться на стороне сервера.

Проблема заключается в следующем:

  • Я делаю правки к посту
  • Я иду в поле пароля и фокусирую его
  • Когда я начинаю печатать, фокус смещается на другое поле, и все, что я печатаю, добавляется к значению этого поля.

Если я изменю поле пароля на type="text", все будет нормально.

Такое поведение присутствует только в Safari и Safari Technical Preview, как в обычном режиме, так и в режиме приватного просмотра.

Chrome и Firefox работают нормально.

Сайт построен с использованием Gatsby.js - генератора статических сайтов, созданного поверх React.js. Я подозревал, что, поскольку React повторно отображает всю форму при обновлении состояния формы (изменение входных значений), Safari повторно инициализирует свою функцию autocomplete и захватывает фокус с поля. Но это всего лишь предположение. И это не действует в Chrome и Firefox.

Ниже приведена видеозапись для лучшего визуального представления того, что я говорю.

https://d2aztkdj0ezvrk.cloudfront.net/items/1D0X3c1f0145291X0J2L/Screen%20Recording%202019-07-03%20at%2008.36%20PM.mov

Спасибо!

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