'autocomplete="off"'在Chrome中不起作用解决方案
来源:互联网 发布:js点击区域div消失 编辑:程序博客网 时间:2024/05/17 23:11
最近项目中遇到一个令人头疼的问题,查阅各种资料,尝试各种方法,最终得以解决;哎···下面就说说这心酸的历程吧。
大家都知道autocomplete属性是表单字段中的HTML5新属性,该属性有两种状态值,分别为"on" 和 "off",该属性可省略:省略属性值后默认值为"on",也可以省略属性名,直接写入关键字on或off。
网站项目中,有登录和注册的弹框,在除chrome的浏览器中一切都ok,一旦在谷歌浏览器中,问题来了:
首先从登录弹框中登陆成功,chrome会弹出是否保存密码的提示框,点击保存密码按钮,
然后接着退出账户,
这时打开注册弹框,你会发现注册弹框中用户名和密码也被默认填写进去了(登录弹框中默认填写进去符合逻辑),
这现象就诡异了,开始各种查,cookie,本地缓存,等等,都解决不了这问题;
查阅后,很多没有这个的解决方案。
1 通常我们会在form表单上加入autocomplete="off" 或者 在输入框中加入autocomplete="off"
2 但是有一种情况例外,就是表单中有input[type="password"],点击保存密码后,在Chrome浏览器则自动填充了用户名和密码的输入框;为了统一样式,我们需要就对Chrome的问题经行单独处理。
总结了5种解决方案,如下:
1 修改value值(目前已失效,随着chrome版本的升级,现今版本已不再能获取到value值了,所以无法对其进行操作,貌似chrome自动填充的表单的value值是存在 DocumentFragment里的div中的,暂不知道怎么去处理,等待大神告知)
2 修改disabled属性
3 去除输入框的name和id属性
4 可以在不需要默认填写的input框中设置 autocomplete="new-password"
网上咱没有找到对其详细解释,但是发现163邮箱的登录注册是这么用的,
所以就借鉴借鉴咯,测试之后也是可以解决问题的,也是最简单的解决办法,网易给您点个赞!
5 修改readonly属性
参考来源:
http://stackoverflow.com/questions/15738259/disabling-chrome-autofill/29582380#29582380
- 'autocomplete="off"'在Chrome中不起作用解决方案
- 'autocomplete="off"'在Chrome中不起作用解决方案
- 'autocomplete="off"'在Chrome中不起作用解决方案
- autocomplete="off"不起作用解决方案
- 浏览器中form和iput设置autocomplete="off" 不起作用
- autocomplete="off"在chrom中失效
- 在chrome浏览器下 input的autocomplete="off"失效,导致的自动填充
- 关闭autocomplete="off"
- input autocomplete="off"
- autocomplete="off"
- input标签中autocomplete="off"失效的具体解决办法
- <input autocomplete="off" />属性
- <input autocomplete="off" />属性
- autocomplete 属性在html <input autocomplete="on|off">中的使用
- autocomplete 属性在html <input autocomplete="on|off">中的使用
- 关于INPUT的autocomplete="off" 属性
- input autocomplete="off"属性的作用
- 验证码 style="ime-mode:disabled;" autocomplete="off"
- Hdu 1671 -Phone List (字典树模板)
- [RK3288][Android6.0] WiFi之与ConnectivityService的交互
- 开发中遇见的问题汇总
- Java中如何遍历Map对象的4种方法
- C++中的string 类 简单介绍
- 'autocomplete="off"'在Chrome中不起作用解决方案
- 基于redis的抽奖解决方案
- jQuery ajax
- fflush
- 虚拟现实产业呈五大发展趋势
- MySql索引——认识索引
- 培训机构防不胜防
- 金额/单位 FUNCTION
- ES6学习——Promises:API介绍