autocomplete =“off”与所有现代浏览器兼容吗?

时间:2010-10-05 22:40:52

标签: html forms

我刚刚被要求阻止浏览器保存输入到特定表单字段的数据。自从我完成了web开发以来已经有好几年了,这是一个相对较新的功能。我能够找到表单字段属性autocomplete =“off”,但我似乎找不到任何说明哪些浏览器支持它的文档。有人能指出我在表格属性和浏览器兼容性图表的正确方向吗?

8 个答案:

答案 0 :(得分:102)

请注意,所有主流浏览器都在向ignoring the attribute for password fields

迈进

我只能提供轶事证据,但我还没有遇到一个不尊重autocomplete="off"的浏览器,这段经历包括:

  • Firefox 1.5+(Windows和Ubuntu)
  • Opera 6+(Windows和Ubuntu)
  • Chrome v2 +(Windows和Ubuntu)
  • Epiphany 0.8(ish)(Ubuntu)
  • Midori(我不记得是哪个版本)
  • Safari v1 +(Windows)
  • IE 4 - 8,Windows。

我知道Greasemonkey脚本,可能是其他用户脚本,可以禁用autocomplete设置。

我发现有几篇文章可能对您有用:

  1. How to turn off form auto-completion
  2. Using auto-complete in html forms

答案 1 :(得分:37)

密码管理员现在忽略主要浏览器中autocomplete个字段的password属性:

它仍然可以在表单字段上禁用autocomplete,但不再影响密码管理器。

答案 2 :(得分:6)

自Chrome v34起,autocomplete="off"现在默认会被忽略。

通过访问chrome://flags

,可以在标志配置中禁用这个有争议的功能

http://news.softpedia.com/news/Chrome-34-Seeks-to-Save-All-Your-Passwords-436693.shtml

答案 3 :(得分:4)

如果你能够使用JavaScript和jQuery,你可以把它放在html的加载上:

$('#theform input').val('');

答案 4 :(得分:1)

除了Maxthon Browser我认为,它们在中国很有名,现在在全世界都有名。他们没有很好地对待Autotocomplete = off power。它不适用于他们。

答案 5 :(得分:1)

某些解决方案无法在现代浏览器中使用。

此处给出了另一个解决方案链接。适用于所有现代浏览器。

Input type=password, don't let browser remember the password

  

您可以在此给定的解决方案中使用 autocomplete =" off"

答案 6 :(得分:0)

事实上,在所有最新的浏览器中,用户名和密码字段都不会对AutoComplete = off做出反应。

答案 7 :(得分:0)

td;dr:要检查跨浏览器的兼容性,这里有一个官方的 MDN 文档,通过兼容性链接关闭自动完成 - https://developer.mozilla.org/en-US/docs/Web/Security/Securing_your_site/Turning_off_form_autocompletion


更长一点的答案:您的问题是因为 Chrome 的自动填充功能,这里是 Chrome 在此错误链接中对此的立场 - https://bugs.chromium.org/p/chromium/issues/detail?id=468153#c164

简单来说,有两种情况-

  • [CASE 1]:您的 input 类型不是 password。在这种情况下,解决方案很简单,分为三个步骤。

    • name 属性添加到 input
    • name 不应以电子邮件或用户名等值开头,否则 Chrome 最终仍会显示下拉列表。例如,name="emailToDelete" 显示下拉菜单,但 name="to-delete-email" 不显示。同样适用于 autocomplete 属性。
    • 添加autocomplete属性,并添加一个对您有意义的值,例如new-field-name

    它看起来像这样,并且在您的余生中您将不会再次看到此输入的自动填充(并且您输入的值不会被缓存) -

    <input type="text/number/something-other-than-password" name="x-field-1" autocomplete="new-field-1" />
    
  • [案例 2]input typepassword

    • 好吧,在这种情况下,无论您是否试用过,Chrome 都会向您显示用于管理密码/使用现有密码的下拉菜单,并显示更新缓存密码的提示。 Firefox 也会做类似的事情,所有其他主要浏览器也是如此。查看我在顶部分享的 MDN 文档链接。
    • 在这种情况下,如果您真的想阻止用户看到管理密码的下拉菜单或保存凭据的提示,您将不得不使用 JS 来切换输入类型,如其他相关问题中所述.