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


84

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




2
@camigreenall-不是重复的;您链接到的问题为您提供了解决方法;我要的是有关浏览器兼容性的文档。
艾美奖(EmmyS)

Answers:


103

请注意,所有主流浏览器都在忽略密码字段的属性

我只能提供轶事证据,但是我还没有遇到过不尊重的浏览器autocomplete="off",这种体验包括:

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

我知道Greasemonkey脚本以及大概其他用户脚本可以禁用该autocomplete设置。

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

  1. 如何关闭表格自动完成
  2. 在HTML表单中使用自动完成功能

谢谢那些文章。我知道有些脚本可以禁用该设置,但是我们只能做很多事情。如果有人希望他们的浏览器将其信用卡信息保存在他们的个人计算机上,那么我们无能为力。我们实际上是在尝试防止将数据保存在共享计算机上。
EmmyS 2010年

@EmmyS,不,这是真的。相当精通技术的用户会遇到实施反自动完成解决方案的麻烦,而用户您的计算机上对您的站点的处理取决于他们,而不是您。=)
大卫说,请恢复莫妮卡2010年

@DavidThomas-感谢兼容性列表,无法从caniuse,w3c或其他地方找到好的兼容性。:) +1
特拉维斯J

1
@EmmyS“我们实际上是在试图避免将数据保存在共享计算机上。 ”正确的方法是在共享计算机上正确设置浏览器,以使它们在会话之间不保留任何信息。
curiousguy

1
@curiousguy-是的,如果您可以控制共享计算机,那是个好主意。在那种情况下我们没有。
EmmyS 2013年

37

从现在开始,密码管理器将忽略主要浏览器中字段的autocomplete属性password

禁用autocomplete表单字段仍然可以正常工作,但不再影响密码管理器。


没有。我刚刚测试。甚至autocomplete="false"在表单字段本身之外的表单字段上都添加了其他内容。没有任何效果。我会说,所有主要浏览器都忽略了自动完成功能。
尤金(Eugene)2015年


4

如果您能够使用JavaScript和jQuery,则可以将其放在html的负载上:

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

这是在使用Mootools的Joomla中使用的-与mootools和jquery存在冲突,所以我不能这样做。不过,我会牢记这一点,以供将来参考。
EmmyS 2010年

参考mootools文档,您可以执行$$('。emptyThisInForm')。each(function(el){el.value ='';});
ITroubs 2010年

1
这段代码会弄乱复选框和单选按钮。可能更优雅的方法是$('#theform')[0].reset()将其强制恢复为HTML中指定的默认值。
·马丁·丹佩西

1
为了只影响密码字段,您可以使用更具体的jQuery选择器,例如:$( '#theform input:password' ).val('');
John Hascall

1

我认为,除了Maxthon Browser之外,它们在中国都很有名,并且在全球范围内都享有盛誉。他们对Autotocomplete = off功能的处理不太好。这对他们不起作用。


是的,Maxthon不会尊重autocomplete=off您,但是您可以通过设置ismxfilled='0'
GTCrais,让其


0

实际上,在所有最新的浏览器中,用户名和密码字段都不会对AutoComplete = off起作用。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.