Получить Firefox, чтобы игнорировать настройку тега автозаполнения HTML 5?


15

В HTML 5 появился новый атрибут с именем autocomplete. Если он установлен на autocomplete=off, то браузер не хранит пароль.

Как я могу переопределить этот параметр, если не считать изменения исходного кода Firefox и его перекомпиляции? Может быть, есть Firefox с опцией config: я пропускаю, что могу переключаться - «ignore: autocomplete» или что-то еще?

html  firefox  html5  web 

Ответы:


1

Весь смысл в autocomplete=offтом, чтобы обеспечить некоторый уровень безопасности для полей, которые требуют этого. Если дизайнер сайта посчитал, что поле требует autocomplete=off, то есть большая вероятность, что он это имеет в виду. Почему вы хотите выключить его?

Краткий ответ: нет, его нельзя отключить. Это считается функцией безопасности.

(кстати, autocomplete=offбыла функция в различных браузерах целую вечность ... она могла быть сделана только формально частью HTML с HTML5, но она использовалась в течение очень долгого времени, поэтому я бы не стал ее рассматривать » новый ")


3
Потому что как часть аудита безопасности мы должны добавить autocomplete = off ко всем нашим именам входа, чтобы пройти аудит. Это реальная боль для всех наших команд по разработке и тестированию проектов. Нет необходимости отключать его в разработке или тестировании, но в то же время было бы смешно включать эту среду во все наши продукты. Многие из наших QA справедливо жалуются на необходимость входа в систему. У нас есть несколько клиентов с пользовательскими функциями, поэтому для тестирования часто требуется вход и выход между клиентами. С этим выключенным это заметно замедлило наше тестирование.

И да, у нас есть автоматическое тестирование, но не все может или должно быть автоматизировано.

2
@user: так почему бы не включить в ваш код флаг, который вы можете включить, чтобы запускать, обслуживает ли сайт флаг автозаполнения? специфичные для разработки флаги для тестирования не являются чем-то необычным в приложении. Или измените пароли в среде QA. Или напишите скрипт Greasemonkey, чтобы дать вам кнопку быстрого входа для каждого пользователя. Существует множество способов обойти это без взлома Firefox.

2
ОТВЕТ @ Комментарий Спудли: скрипт Greasemonkey привел меня к этому: downloadsquad.switched.com/2005/08/29/… со ссылкой на скрипт «AllowPasswordRemembering», который отменяет флаг autocomplete = off. Это работает. Благодарность!

11
Что за дебильная функция безопасности. Если сохранение паролей слишком рискованно, то вообще не поддерживайте его. Если это не слишком рискованно, то всегда позволяйте это. С какой стати это до веб-разработчиков? Что ОНИ должны сделать с этим решением? </ rant>
RomanSt

11

Есть и другой способ заставить Firefox запомнить пароль благодаря Firebug: просто измените значение автозаполнения на «on» и сохраните форму. Firefox покажет всплывающее окно «запомнить» как обычно.

Подробности приведены здесь :

  • установить Firebug
  • на странице с ошибочным паролем откройте Firebug.
  • используйте синий указатель мыши на панели инструментов Firebug, чтобы выбрать поле пароля на вкладке Firebug HTML, у вас должно быть выбрано поле
  • дважды щелкните «выкл», чтобы изменить значение и изменить его на «вкл».
  • Теперь введите свой логин / пароль как обычно в форме страницы
  • когда вы нажимаете «отправить», Firefox должен отобразить всплывающее уведомление, которое позволяет запомнить логин / пароль для этого сайта.

Теперь, каждый раз, когда вы собираетесь перейти на эту страницу, Firefox автоматически заполняет логин / пароль, как обычно.


Вы также можете просто дважды щелкнуть «автозаполнение» и нажать клавишу удаления, чтобы просто удалить весь атрибут.
Мэтью Лок

Теперь работай больше. (Вы получили несколько голосов, так что я думаю, что я мог работать в первые дни). Протестировано с Firefox 32.0.1, Firebug 1.11.1 / 2.0.4, инструментами разработчика Firefox на Magento Backend CE 1.9.0.1.
user620965

Кажется, все еще работает в Firefox 39 на моей стороне. Сейчас я использую встроенную функцию Firefox «щелкнуть правой кнопкой мыши -> проверить элемент (Q)», но процесс такой же: отредактируйте код, чтобы удалить или включить тег автозаполнения, введите логин и пароль, нажмите «ОК» и Firefow показывает «Вы хотели бы вспомнить пароль». У вас не работает сайт, на котором я могу проверить?
fanf42

5

Следующая закладка делает все формы на этой странице автозаполняемыми:

<a href="javascript:(function(){var fm=document.getElementsByTagName('form');for(i=0;i<fm.length;i++){fm[i].setAttribute('autocomplete','on');}})()">Autocomplete on</a>

Просто поместите вышеуказанное в HTML-файл, откройте его в браузере, перетащите ссылку «Автозаполнение в» на панель инструментов закладок, перейдите на страницу с ошибочной формой и нажмите закладку «Автозаполнение в», чтобы форма запомнила вашу запись. ,


Работает как шарм ... ты очень.
Yamodax

это простое и легкое решение! (хотя мне пришлось изменить «форму» на «вход» для единственного веб-сайта, который я до сих пор проверял)
Кевин

Похоже, Firefox 32.0.1 устанавливает пароль для сохранения правил безопасности при загрузке. Изменения через Javascript больше не учитываются.
user620965

2

Самый простой способ сделать это:

найдите файл nsLoginManager.js в папке «Mozilla Firefox», например:

C: \ Program Files \ Mozilla Firefox \ nsLoginManager.js

найдите функцию

_isAutocompleteDisabled :  function (element) {
        if (element && element.hasAttribute(”autocomplete”) &&
            element.getAttribute(”autocomplete”).toLowerCase() == “off”)
            return true;

return false;
},

Теперь измените первое возвращение с true на false, например:

_isAutocompleteDisabled :  function (element) {
        if (element && element.hasAttribute(”autocomplete”) &&
            element.getAttribute(”autocomplete”).toLowerCase() == “off”)
            return false;  //This is the line of code that changed.....

return false;
},

Теперь сохраните это изменение и перезапустите Firefox.


Это не работает с Firefox 17
Ben

Это не работает в Firefox 32.0.1
user620965

Это неправильное редактирование. Что вы хотите сделать, это добавить «вернуть истину»; в первой строке этой функции автозаполнение всегда включено и проверки не выполняются.
cprn

1

Если у вас есть Firefox, вы можете установить Greasemonkey и установить это дополнение, которое повторно включает автозаполнение для формы. Это не идеально, но в целом это работает. Для сайтов, на которых он не работает, вы можете создать собственный скрипт grease monekey.


Ваша ссылка на аддон отключена.
user620965

Это действительно так! Пользовательские скрипты укусили за ведро! Вот зеркало: userscripts-mirror.org/scripts/show/36242.html
SeanDowney

Вы можете разместить его на greasyfork.org
cprn

1

Аддон Auto-Complete On позволяет автозаполнение только для входа в систему связанных полей, так что номера кредитных карт и т.п. все еще не будут сохранены (по крайней мере , в теории).

Учитывая, что это дополнение всегда включено, это кажется хорошей идеей. Это аддон без перезапуска, поэтому теоретически вы можете включить его только тогда, когда вам это нужно относительно легко.


Теперь работай больше. (Вы получили несколько голосов, так что я думаю, что я мог работать в первые дни). Протестировано с Firefox 32.0.1, Auto-Complete On 1.6 на Magento Backend CE 1.9.0.1
user620965
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.