防止浏览器记住用户名及密码的简单实用方法


Posted in Javascript onApril 22, 2013

如何设置能禁止浏览器自动保存表单信息,比如用户名,密码?
现在很多浏览器都有自动填写功能,我在input上使用了autocomplete="off",但在有的浏览器上还是被记住了用户名跟密码,请问有没有更有效及简便的方法来防止浏览器记住用户名及密码?

1、针对浏览器记住密码
1).首先大部分浏览器都是根据表单域的type="password"来判断密码域的,所以针对这种情况可以采取“动态设置密码域”的方法:

<input type="text" name="password" onfocus="this.type='password'" />

解释:当这个文档框获取焦点时才将其变成密码域,这样浏览器就不会记住密码,当然为了更加完善,还可以把autocomplete="off"属性也加上。
2).在onload事件,把密码框的值清空,即:
<script language="javascript"> 
window.load = function(){ 
document.getElementById('密码域ID').value=''; 
}; 
</script>

3).页面采用https协议,因为https是不会对表单进行保存信息的。
4).采用flash做登录表单,这种情况浏览器也不会记录表单信息。
5).再来个变态的好了,就是可以把type="password"改成type="text",因为type不是password就不会出现记住密码功能,然后设置一个变量如:var val=""或者是设置一个隐藏域<input type="hidden" name="val">,最后用onpropertychange把密码换成一行圆点,并把值赋给val,提交时再把val的值还原回去,由于效果和*号一样。 用户是看不出来的。

2、针对有些浏览器插件的自动填表功能
这个就比较麻烦了,我想这种情况应该是插件记住表单域name的值,然后再进行填表,这种情况,我觉得可以在页面加载时动态更改name的值,当提交表单的时候再把表单的值组合成正确的对应值再提交。这个没有经过验证,只是我个人的想法。你可以试试

如果以上这些方法还满足不了你,那我也没办法了。

建议:
试一下把对应域名下的cookie清掉,浏览器应该是根据cookie来记住用户名密码的。
(不是的,有的浏览器是在你提交表单后,根据你提交的值来记住的)
(对的 有些浏览器不记录在COOKIE 这个比较头疼 顺便问下INPUT里输入过的值如何清除?我希望能像银行的那样 输入过的值不再出现)
浏览器记住密码的实现方式就是通过寻找type为password的input输入框,然后前边一个输入框就作为用户名记住。所以解决这个问题的办法就是在用户名input和密码input之间增加一个type为text的输入框设置css属性display为none。

Javascript 相关文章推荐
比较简单的一个符合web标准的JS调用flash方法
Nov 29 Javascript
多浏览器支持的右下角浮动窗口
Apr 01 Javascript
JS获取浏览器语言动态加载JS文件示例代码
Oct 31 Javascript
js实现简单排列组合的方法
Jan 27 Javascript
jQuery链式调用与show知识浅析
May 11 Javascript
JS实现六位字符密码输入器功能
Aug 19 Javascript
利用angularjs1.4制作的简易滑动门效果
Feb 28 Javascript
使用vue-aplayer插件时出现的问题的解决
Mar 02 Javascript
angular实现input输入监听的示例
Aug 31 Javascript
vue用BMap百度地图实现即时搜索功能
Sep 26 Javascript
深入浅析vue全局环境变量和模式
Apr 28 Javascript
vue2的 router在使用过程中遇到的一些问题
Apr 13 Vue.js
js播放wav文件(源码)
Apr 22 #Javascript
如何将一个String和多个String值进行比较思路分析
Apr 22 #Javascript
『JavaScript』限制Input只能输入数字实现思路及代码
Apr 22 #Javascript
『jQuery』名称冲突使用noConflict方法解决
Apr 22 #Javascript
『jQuery』.html(),.text()和.val()的概述及使用
Apr 22 #Javascript
『jQuery』取指定url格式及分割函数应用
Apr 22 #Javascript
网页整体变灰白色(兼容各浏览器)实例
Apr 21 #Javascript
You might like
php 文件上传实例代码
2012/04/19 PHP
PHP实现模仿socket请求返回页面的方法
2014/11/04 PHP
学习php设计模式 php实现访问者模式(Visitor)
2015/12/07 PHP
深入理解Yii2.0乐观锁与悲观锁的原理与使用
2017/07/26 PHP
JS判断文本框内容改变事件的简单实例
2014/03/07 Javascript
js 判断浏览器使用的语言示例代码
2014/03/22 Javascript
小议JavaScript中Generator和Iterator的使用
2015/07/29 Javascript
详解基于angular路由的requireJs按需加载js
2017/01/20 Javascript
微信小程序页面滑动屏幕加载数据效果
2020/11/16 Javascript
限时抢购-倒计时的完整实例(分享)
2017/09/17 Javascript
Vue 创建组件的两种方法小结(必看)
2018/02/23 Javascript
vue 的keep-alive缓存功能的实现
2018/03/22 Javascript
微信小程序仿美团城市选择
2018/06/06 Javascript
vue 自定义提示框(Toast)组件的实现代码
2018/08/17 Javascript
如何使用CSS3+JQuery实现悬浮墙式菜单
2019/06/18 jQuery
解决vue项目中页面调用数据 在数据加载完毕之前出现undefined问题
2019/11/14 Javascript
[01:21:36]CHAOS vs Alliacne 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/16 DOTA
python共享引用(多个变量引用)示例代码
2013/12/04 Python
python打开网页和暂停实例
2014/09/30 Python
python实现计算倒数的方法
2015/07/11 Python
动态规划之矩阵连乘问题Python实现方法
2017/11/27 Python
pytorch 把MNIST数据集转换成图片和txt的方法
2018/05/20 Python
Python利用ORM控制MongoDB(MongoEngine)的步骤全纪录
2018/09/13 Python
python从入门到精通 windows安装python图文教程
2019/05/18 Python
Python使用线程来接收串口数据的示例
2019/07/02 Python
Python3 使用pillow库生成随机验证码
2019/08/26 Python
Python itertools.product方法代码实例
2020/03/27 Python
canvas像素点操作之视频绿幕抠图
2018/09/11 HTML / CSS
购买中国最好的电子产品:Geekbuying
2018/03/13 全球购物
励志演讲稿大全
2014/08/21 职场文书
春季运动会开幕词
2015/01/28 职场文书
小学感恩主题班会
2015/08/12 职场文书
车间班组长竞聘书
2015/09/15 职场文书
详解缓存穿透击穿雪崩解决方案
2021/05/28 Redis
Redis源码阅读:Redis字符串SDS详解
2021/07/15 Redis
OpenCV 图像梯度的实现方法
2021/07/25 Python