有没有办法阻止LastPass浏览器扩展插入一个名为"username"的输入字段的基于HTML的表单?
这是一个隐藏的字段,因此我不希望任何软件将此字段用于其目的:
解决方案不应该像"重命名输入字段".
添加
data-lpignore="true"
到输入字段为我禁用灰色LastPass [...]框.
来自LastPass.com
必须满足两个条件:
的形式(未在元件)需要具有autocomplete="off"
属性
Lastpass用户需要启用此选项: Settings > Advanced > Allow pages to disable autofill
所以这取决于用户和开发人员.
我认为 lastpass尊重autocomplete="off"
输入的属性,但我不是100%肯定.
编辑 正如其他人所指出的那样.这仅适用于用户最后一次配置以符合此要求的情况.
我知道我在这里参加派对已经很晚了,但是当我试图阻止最后一次破坏我的表格时,我发现了这一点.@takeshin是正确的,因为自动完成是不够的.我最终只是为了隐藏符号而在下面进行黑客攻击.不漂亮,但我摆脱了图标.
如果任何lastpass开发人员正在阅读这个,请给我们一个使用的属性,所以我们不必诉诸这样的东西.
form[autocomplete="off"] input[type="text"] { background-position: 150% 50% !important; }
对我来说,无论type=search
是有点相同text
还是使用role=note
.
您可以查看LastPass-JavaScript,但它很大,可能您可以在那里找到一些解决方法,从我看到它们只检查4种输入类型,因此input type=search
将是一种解决方法:
!c.form && ("text" == c.type || "password" == c.type || "url" == c.type || "email" == c.type) && lpIsVisible(c))
这些是role
他们似乎忽略的关键词:
var c = b.getAttribute("role"); switch (c) { case "navigation": case "banner": case "contentinfo": case "note": case "search": case "seealso": case "columnheader": case "presentation": case "toolbar": case "directory":`
我检查了LastPass' onloadwff.js
,准备26.960行代码:)
对我有用的是在表单的id中加上单词"-search-",类似于<form id="affiliate-search-form">
- 而lastpass不会将其元素添加到表单输入中.它适用于更简单<form id="search">
但不起作用的东西<form id="se1rch">
参加聚会有点晚,但是我刚刚通过修改表单来实现了:
<form autocomplete="off" name="lastpass-disable-search">
我猜这是傻瓜的最后通行,认为这是一种搜索表单。但是,这不适用于密码字段!在这种情况下,Lastpass会忽略名称字段。
我设法做到这一点的唯一方法是直接在表单顶部添加以下内容:
<form autocomplete="off"> <div id="lp" ><input type="text" /><input type="password" /></div><script type="text/javascript">setTimeout(function(){document.getElementById('lp').style.display = 'none'},75);</script> </form>
它会引起讨厌的闪烁,但会删除自动填充废话-尽管它仍然显示“生成密码”小部件。LastPass等到domready,然后检查是否有可见的密码字段,因此无法隐藏或缩小上面的模拟字段。
将"搜索"添加到输入ID
<input type="text" name="user" id="user-search"/>