为什么我的 LastPass 浏览器扩展程序应该至少为这一页添加 autocomplete=off,我怎样才能阻止它这样做?
Why is autocomplete=off being supposedly added by my LastPass browser extension for this one page at least, and how can I prevent it from doing so?
问题背景和步骤
我在 Mac OS 版本 10.12.3 上使用 Chrome 58。
类似的事情正在发生:Whosebug - What is _lpchecked=“1” for in a form?
当我在子输入元素内部单击时,此属性被添加到父表单元素。
我的问题是,当发生这种情况时,属性 "autocomplete=off" 被添加到输入元素。
在子输入元素之间切换时,此属性将添加到当前获得焦点的元素。
元素名称是 "to_email" 和 "comments"。
这不是登录表单,而是共享表单。
这似乎是基于我拥有 LastPass 扩展名、变量名称和一些在线搜索。
我尝试进入 LastPass 帐户设置区域,"Never URLs" section/tab,并将 URL 添加到 "Never Do Anything" 类别。
URL 的格式为 sub.domain.tld/path/resource.php?queryParam=value
。 LastPass 只允许我将没有查询部分的 URL 添加到列表中,即使我尝试使用通配符星号 (*) 作为值。
即使在访问 LastPass 扩展程序菜单 > 更多选项 > 高级 > 刷新站点、清除本地缓存并刷新页面后,此问题仍然存在。
我在 Hacker News article 中没有看到任何关于 Chrome 中类似 signon.overrideAutocomplete
属性 的信息,就像 Firefox 一样,并且可能不想要如此广泛的解决方案.
我不想安装另一个扩展,例如 autocomplete-on
(似乎不存在)并且彼此具有功能'battle',这甚至可能不会产生理想的结果,例如根本不工作,或者不断翻转。
我什至用 "adding attribute" 和 "dynamic" 之类的词搜索了其他可能的原因,但 Google 将结果偏向于特定页面的不那么复杂的场景,一些如果我愿意,我可以尝试用 TamperMonkey 来解决。
如果有任何类似 'sniffing' 的问题需要更多的自动完成信息,正如这些链接所提到的:
那么希望我只在有限的基础上解决这个问题应该没问题,尤其是只针对具有不敏感数据的表单。
问题
- 如何防止 LastPass 添加此属性?
- 只有 LastPass 这样做吗?
- 我输入的 URL 是否正确到 "Never Do Anything"?
有趣Link
目前,如果我添加 TamperMonkey 脚本来覆盖该值,它似乎可以工作。
这不像 jonmetz 研究员提到的制作他自己的插件(他在 Firefox 中)那么大,并且可以根据需要复制。如果需要很多,那么扩展可能会更方便。
由于页面上问题的动态和重复性质,简单的分配不起作用,并被覆盖。
如果我这样添加一个 onFocus 事件监听器,我对该属性的偏好仍然是最终结果:
var emailInput = document.querySelector('input[name="to_email"]');
emailInput.addEventListener('focus', function(){
this.autocomplete = "on";
});
我也会这样做以防万一:
var parentForm = emailInput.parentNode;
parentForm.setAttribute('_lpchecked', '1');
问题背景和步骤
我在 Mac OS 版本 10.12.3 上使用 Chrome 58。
类似的事情正在发生:Whosebug - What is _lpchecked=“1” for in a form?
当我在子输入元素内部单击时,此属性被添加到父表单元素。
我的问题是,当发生这种情况时,属性 "autocomplete=off" 被添加到输入元素。 在子输入元素之间切换时,此属性将添加到当前获得焦点的元素。
元素名称是 "to_email" 和 "comments"。
这不是登录表单,而是共享表单。
这似乎是基于我拥有 LastPass 扩展名、变量名称和一些在线搜索。
我尝试进入 LastPass 帐户设置区域,"Never URLs" section/tab,并将 URL 添加到 "Never Do Anything" 类别。
URL 的格式为 sub.domain.tld/path/resource.php?queryParam=value
。 LastPass 只允许我将没有查询部分的 URL 添加到列表中,即使我尝试使用通配符星号 (*) 作为值。
即使在访问 LastPass 扩展程序菜单 > 更多选项 > 高级 > 刷新站点、清除本地缓存并刷新页面后,此问题仍然存在。
我在 Hacker News article 中没有看到任何关于 Chrome 中类似 signon.overrideAutocomplete
属性 的信息,就像 Firefox 一样,并且可能不想要如此广泛的解决方案.
我不想安装另一个扩展,例如 autocomplete-on (似乎不存在)并且彼此具有功能'battle',这甚至可能不会产生理想的结果,例如根本不工作,或者不断翻转。
我什至用 "adding attribute" 和 "dynamic" 之类的词搜索了其他可能的原因,但 Google 将结果偏向于特定页面的不那么复杂的场景,一些如果我愿意,我可以尝试用 TamperMonkey 来解决。
如果有任何类似 'sniffing' 的问题需要更多的自动完成信息,正如这些链接所提到的:
那么希望我只在有限的基础上解决这个问题应该没问题,尤其是只针对具有不敏感数据的表单。
问题
- 如何防止 LastPass 添加此属性?
- 只有 LastPass 这样做吗?
- 我输入的 URL 是否正确到 "Never Do Anything"?
有趣Link
目前,如果我添加 TamperMonkey 脚本来覆盖该值,它似乎可以工作。
这不像 jonmetz 研究员提到的制作他自己的插件(他在 Firefox 中)那么大,并且可以根据需要复制。如果需要很多,那么扩展可能会更方便。
由于页面上问题的动态和重复性质,简单的分配不起作用,并被覆盖。
如果我这样添加一个 onFocus 事件监听器,我对该属性的偏好仍然是最终结果:
var emailInput = document.querySelector('input[name="to_email"]');
emailInput.addEventListener('focus', function(){
this.autocomplete = "on";
});
我也会这样做以防万一:
var parentForm = emailInput.parentNode;
parentForm.setAttribute('_lpchecked', '1');