Я провел массу исследований по этой проблеме, но не могу найти ничего, что решило бы мою проблему.
У меня установлено autocomplete="off" в моем теге формы, а также во всех моих входных тегах, но Safari продолжает вводить автоматически сохраненные пароли в мою форму при загрузке страницы, что вызывает нежелательное событие нажатия клавиши в форме в моем JavaScript. .
Есть предположения? Я пробовал всевозможные хаки, такие как полное удаление этих полей ввода из кода, а затем использование javascript и setTimeout для вставки их на страницу через несколько секунд, но даже после этого Safari по-прежнему добавляет сохраненные пароли к моим вводам. .
Я также пробовал использовать атрибуты autocorrect="off" и autocapitalize="off" в моих тегах и .
Я пробовал такие хаки Javascript (пример):
$(function() {
$('input').attr('autocomplete', 'off');
});
Так что каждое поле ввода на странице при загрузке имеет этот атрибут, и при этом Safari все равно вставляет в поля свои сохраненные пароли.
Да, на странице используется тип документа html5 (потому что я знаю, что автозаполнение не будет работать без него).
Вот мой код:
- form_for @website, :html => {:class => 'fields', :autocomplete => 'off'}, :url => {:controller => 'signup', :action => 'connect'} do |form|
%h3 Enter URL
%ol.fields
%li
= form.label :url, "Website URL:"
= form.text_field :url, :placeholder => "Website URL", :autocomplete => "off", :class => "website_url"
%h3 Enter Credentials
- form.fields_for :authentication do |aa|
%ol.fields
%li
= aa.label :hostname, "SFTP/FTP Server:"
= aa.text_field :hostname, :placeholder => "SFTP", :autocomplete => "off"
%li
= aa.label :account, "Username:"
= aa.text_field :account, :placeholder => 'Username', :autocomplete => "off"
%li
= aa.label :password, "Password:"
= aa.password_field :password, :placeholder => 'Password', :autocomplete => "off"
Вышеупомянутое в haml. Это рубиновое приложение. Он вставляет мои пароли в ввод :account и ввод :password. Я попытался обернуть часть имени моего ввода :account в теги span следующим образом:
User<span>n</span>ame
из-за того, что слово «имя» является триггером для автосохраненных паролей, но сафари по-прежнему выбрасывает сохраненные пароли в мою форму после этой попытки решить эту проблему.
Я был бы очень признателен за некоторые новые советы, которые я мог бы попробовать. Все, что я нашел до сих пор для этой проблемы, люди просто говорят «используйте автозаполнение = «выкл.» Я, но это не работает!
Кроме того, я тестировал это с Safari 6.1.2, но также подтвердил это странное поведение с более старыми и новыми версиями Safari. Ссылка на скриншот проверки браузера, поэтому я знаю, что атрибут autocomplete="off" правильно добавляется к элементам: http://imgur.com/Sgqn7A4
autocomplete="off"
добавляется в окончательный HTML-код? ? - person Blazemonger   schedule 25.03.2014