IE本地存储userdata的一个bug说明


Posted in Javascript onJuly 01, 2010

关于userdata的简单资料:请点击这里

再一次项目上用到ie的userdata,考虑当用户不使用flash插件用于存储一些聊天记录

触发bug?条件:

1、通过userdata在同一个xml文件内存储两个属性 xxx.setAttribute('a', '111'); xxx.setAttribute('b', '222'); xxx.save('xmlname');

这时userdata对应的xml文件内是这样的 <ROOTSTUB a="111" b="222" />

2、ctrl+F5 刷新页面后,通过 xxx.removeAttribute('a'); 删除已知属性 'a'; 预期结果:<ROOTSTUB b="222" />

实际结果: <ROOTSTUB />

bug?:在删除一属性时连带删除了另一个属性

猜测:userdata在操作时可能和ie自身缓存有某种程度的绑定关联,在强刷后缓存丢失导致?

解决土方法:

在删除一属性时,请先通过 xxx.load('xmlname'); var val = xxx.getAttribute('b'); 把另一个属性load出来保存在一变量中,在removeAttribute成功后,

再把b属性setAttribute('b', val); 回去。

希望对你有帮助,谢谢。

ps:用Storage多好啊,别扭

Javascript 相关文章推荐
jquery ui resizable bug解决方法
Oct 26 Javascript
获取css样式表内样式的js函数currentStyle(IE),defaultView(FF)
Feb 14 Javascript
js实现幻灯片播放图片示例代码
Nov 07 Javascript
JS 新增Cookie 取cookie值 删除cookie 举例详解
Oct 10 Javascript
DOM操作原生js 的bug,使用jQuery 可以消除的解决方法
Sep 04 Javascript
浅谈Node.js:fs文件系统模块
Dec 08 Javascript
推荐VSCode 上特别好用的 Vue 插件之vetur
Sep 14 Javascript
详解vue更改头像功能实现
Apr 28 Javascript
VueJS 取得 URL 参数值的方法
Jul 19 Javascript
Javascript 类型转换、封闭函数及常见内置对象操作示例
Nov 15 Javascript
javascript实现点击星星小游戏
Dec 24 Javascript
解决vue.js中settimeout遇到的问题(时间参数短效果不稳定)
Jul 21 Javascript
UserData用法总结 lanyu出品
Jul 01 #Javascript
javascript 函数调用的对象和方法
Jul 01 #Javascript
this和执行上下文实现代码
Jul 01 #Javascript
jquery.validate使用攻略 第五步 正则验证
Jul 01 #Javascript
jquery validate使用攻略 第四步
Jul 01 #Javascript
jquery.validate使用攻略 第三部
Jul 01 #Javascript
jquery.validate使用攻略 第二部
Jul 01 #Javascript
You might like
PHP实现邮件群发的源码
2013/06/18 PHP
PHP匿名函数和use子句用法实例
2016/03/16 PHP
PHP+Ajax+JS实现多图上传
2016/05/07 PHP
PHP中时间加减函数strtotime用法分析
2017/04/26 PHP
php命令行模式代码实例详解
2021/02/26 PHP
新页面打开实际尺寸的图片
2006/08/25 Javascript
css把超出的部分显示为省略号的方法兼容火狐
2008/07/23 Javascript
!DOCTYPE声明对JavaScript的影响分析
2010/04/12 Javascript
基于jquery的放大镜效果
2012/05/30 Javascript
方便实用的jQuery checkbox复选框全选功能简单实例
2013/10/09 Javascript
我的Node.js学习之路(一)
2014/07/06 Javascript
javascript实现设置、获取和删除Cookie的方法
2015/06/01 Javascript
原生javascript实现匀速运动动画效果
2016/02/26 Javascript
Bootstrap打造一个左侧折叠菜单的系统模板(二)
2016/05/17 Javascript
微信小程序通过保存图片分享到朋友圈功能
2018/05/24 Javascript
iview的table组件自带的过滤器实现
2019/07/12 Javascript
Electron实现应用打包、自动升级过程解析
2020/07/07 Javascript
javascript实现一款好看的秒表计时器
2020/09/05 Javascript
vue+openlayers绘制省市边界线
2020/12/24 Vue.js
详解vue3中组件的非兼容变更
2021/03/03 Vue.js
python3 面向对象__类的内置属性与方法的实例代码
2018/11/09 Python
Python将字符串常量转化为变量方法总结
2019/03/17 Python
Python流行ORM框架sqlalchemy安装与使用教程
2019/06/04 Python
Python 进程之间共享数据(全局变量)的方法
2019/07/16 Python
Django Rest framework解析器和渲染器详解
2019/07/25 Python
使用批处理脚本自动生成并上传NuGet包(操作方法)
2019/11/19 Python
基于python实现蓝牙通信代码实例
2019/11/19 Python
基于Numba提高python运行效率过程解析
2020/03/02 Python
如何将anaconda安装配置的mmdetection环境离线拷贝到另一台电脑
2020/10/15 Python
Python应用自动化部署工具Fabric原理及使用解析
2020/11/30 Python
夜大毕业生自我鉴定
2013/10/31 职场文书
自我鉴定注意事项
2014/01/19 职场文书
亮剑精神观后感
2015/06/05 职场文书
2015年环卫处个人工作总结
2015/07/27 职场文书
《家世》读后感:看家训的力量
2019/12/30 职场文书
MySQL中LAG()函数和LEAD()函数的使用
2022/08/14 MySQL