普通的登录表单,在登录后浏览器会询问是否记住密码;在下次登录时,会提供下拉选项,选择已经保存过的密码。这个功能的安全性先不谈,有个问题就是已经保存的密码的背景颜色是浏览器固定的,无法修改,在某些情况下可能与页面的设计不匹配。因此,这个时候就要考虑不让浏览器记住密码。
浏览器是根据 input type="password" 来判断是否是登录表单的,并且会使用上一个表单来作为用户名。那么我们可以在未输入密码的时候将type设置为text,在输入密码时再设置为password。此时浏览器还是会自动将上一个表单的用户名自动填充,这就很讨厌了。这时我灵机一动,创建一个input type="password" ,把它放在表单的第一项,并设置为隐藏,那么浏览器就会从这个表单来判断要记住用户名和密码。但是用户不会填写这个表单,所以登录时就骗过了浏览器,不再记住用户名和密码啦!
未输入密码的时候将type设置为text,在输入密码时再设置为password的表单:
<input name="password" placeholder='密码' maxlength="16" type='text' autocomplete="off"
oninput="if(this.value===''){this.type='text'}else(this.type='password')">
|