我有一个需要一些功能的网站:
在我的网站上没有自动填充,建议或保存:
防止“散布”到其他站点:
到目前为止,我已经通过在所有表单上使用autocomplete =“ off”来完成此操作。基于 this link from Mozilla ,最初应该可以解决上述所有问题,但是现在某些浏览器开始忽略autocomplete属性。上面提到的文章指出,技巧是为属性分配无效的值,例如autcomplete =“ nope”
我的问题是:
Q1:使用autocomplete =“ nope”的解决方案还会阻止缓存/保存数据吗?
Q2:是否有更好的解决方案来满足我的标准,以实现最佳的跨浏览器兼容性? (我已经搜索过,但没有找到能给我明确答案的任何内容。)
答案 0 :(得分:0)
最好的解决方案是您所提到的放置无效值,如here所示。
在某些情况下,浏览器将继续建议自动补全 值,即使autocomplete属性设置为off也是如此。这个 对于开发人员而言,意外行为可能会令人困惑。诀窍 真正强制执行非自动补全功能是将无效值分配给 属性,例如:
autocomplete="nope"
由于此值对于autocomplete属性不是有效值, 浏览器无法匹配它,并停止尝试自动完成 领域。
您的数据或缓存不会受到此影响,并且取决于您内置的表单,数据只能通过{{1}上的form
操作或function
处理程序来保存}}。
或者,我发现输入上的inputs
是可靠的,但是与添加到每个autocomplete= 'new-password'
form
包装器上的上述示例所需的工作要少得多