zoukankan      html  css  js  c++  java
  • 表单自动填充autocomplete的兼容性方案

    以下情况下会自动填充用户和密码信息:

        1、在用户和密码包含在form的情况下,同时包含一个 type="text"和 type="password"元素且不包含readonly和disabled属性,两个元素可以没有name和id属性

        2、在没有form的情况下,同时包含一个 type="text"和 type="password"元素且不包含readonly和disabled属性,且两个元素至少都有name或id属性(但name和id可以是任意值但不能是空或空格)。

    规避以上情况可以实现禁止自动填充西账号密码

    登录或者注册浏览器会提示是否记住密码

    当浏览器记住密码后,之后的每次登录/注册都会自动填充输入框

    默认的解决方案是在form与input上添加autocomplete=“off”,但是在很多浏览器上不起作用

    网上也提供了好多方案,比如在最前面放一个隐藏的input标签或者是把autocomplete设置为new-password,浏览器调试工具测试后具不起作用啊,有木有

    (在chrome上测试了一下隐藏的type=text的input放在正常input的后面,而password放到前面)

    比较可信的有两种方案

    第一:

    默认设置input为readonly    onfouces的时候去掉这个属性,onblur的时候加上这个属性

    第二:

    现在页面显示一个假的输入框,当这个输入框foucus的时候,把真的输入框替换上去,当失去焦点的时候再替换回来,这样即使浏览器要记住密码也不会在输入框上留下痕迹

  • 相关阅读:
    让我们一起Go(八)
    让我们一起Go(七)
    让我们一起Go(六)
    VTemplate模板引擎的使用入门篇
    超时时间已过或服务器未响应的解决方法
    SQL Server 2005使用BCP命令将数据表导出到Excel第一行包括表头
    VTemplate模板引擎的使用进阶篇
    VTemplate模板引擎的使用认识篇
    免费开源的模板引擎VTemplate
    .NET 4.5 中新提供的压缩类
  • 原文地址:https://www.cnblogs.com/fqlGlog/p/8303643.html
Copyright © 2011-2022 走看看