1、以下方法不好使(谷歌浏览器)
如何让浏览器找不到密码框?尤其是Google Chrome,我在密码框上边加了隐藏密码框还是不行,他还是能填充上。
代码如下
<input type="password" name="txtPassword" style="display:none">
<input type="password" name="txtPassword" placeholder="请输入密码" autocomplete="off" />
另外还有一种方式: <input type="password" style="display:none">
<input type="password" placeholder="请输入密码" autocomplete="new-password" />
谷歌浏览器比较吊,只加上一个隐藏密码框还是不行的,把两个密码框名字改成一样的就好了,这家伙就找不到了,(*^__^*) 嘻嘻…
2、
浏览器自动填充机制
反复测试后发现浏览器自动填充机制是满足:页面里有一个type=password的input且这个input前面有一个type=text的input的时候就会进行自动填充。firefox和360浏览器的处理方式是:只要检测到页面里有满足填充机制的,不管是不是display:none 的,只要检测到就直接往里填充。而且是有几个符合条件的就填充几个。而chrome 54版本略有不同:满足上面的条件且页面里只有一个type=password 的input。才会自动给第一个type=text 的input填充账号,给type=password 的input填充密码。
解决方案
所以根据这个机制,我的解决办法是:给第一个type=text的input前面再加一个隐藏的type=text的input,给第一个type=password的input前面再加一个隐藏的type=password的input。
链接地址https://segmentfault.com/a/1190000016253795
3、360浏览器:解决360浏览器自动填充表单的问题(有用)
在这里面,必需给用户名赋值一个uname值,不知道为啥,加上之后就好使了,如果不加name值的话,点击密码还是会自动填充
<div>
<input id="username" name="nusm" maxlength="80" autocomplete="off" placeholder="用户名" />
<input name="pass_word" type="password" class="loginInput" disabled style="width:0;height:0;display:none;"/>
</div>
<div class="inputDiv" id="pwd">
<input name="pass_word" type="text" class="loginInput lastpwd" placeholder="密码" autocomplete="off" maxlength="128" />
</div>