【问题标题】:When does Chrome autofill in a web page render?Chrome 何时在网页中自动填充?
【发布时间】:2011-05-22 15:15:52
【问题描述】:

我有一位客户希望他们的 UI 在表单中显示字段名称(用户名字段显示“用户名”,密码字段显示“密码”等)。由于表单使用密码类型<input>(通常显示点),我不得不通过用包含措辞的 div 覆盖它们来模拟将数据填充到字段中。

为了识别自动填充,我编写了一些 Javascript 来检查字段是否被填充并采取相应的行动(隐藏或显示措辞)。

据我所知,Chrome 是唯一一个不稳定的浏览器。它似乎并不关心是否有自动填充数据,并且措辞总是覆盖自动填充数据(表面上是因为hide 功能没有被触发)。

我的冗长问题是 Chrome 何时在渲染过程中自动填充数据?它是否也要等到 Javascript 完成?我有什么方法可以检查自动填充数据是否占用了 Chrome 中的某个字段?

【问题讨论】:

  • 如果您在隐藏字词功能上添加了一个很长的setTimeout,那么它会在 Chrome 上正确处理吗?也就是说,尝试从等式中删除文档加载顺序,以确定这是否真的是导致 chrome 脱落的原因。

标签: javascript forms google-chrome autofill


【解决方案1】:

一个简单的解决方法是使用 WebKit 和 Firefox 支持的 HTML5 的 placeholder 属性。这需要额外的功能检测,但您只需要在非 Chrome 中实现模拟覆盖。

Dive Into HTML5 explanation

【讨论】:

  • 虽然没有得到广泛的支持,但这个功能是我在 HTML5 中寻找的更棒的功能之一
  • 我。有。不。主意! BEGONE 带有 javascript 焦点和模糊功能的重标签!!!!!!!!!!!!
【解决方案2】:

我决定将侦听器附加到激活包含表单的模式的事件。不用说,这是一个仅适用于我的特定情况的解决方案。我不认为这是一个答案,但我将其发布在这里,可能会给正在寻找解决方案的其他人提供一种解决方法。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-10
    • 2018-01-18
    • 2023-01-10
    • 1970-01-01
    • 2013-08-28
    • 2013-03-22
    相关资源
    最近更新 更多