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中:file选择器用法实例
Jan 04 Javascript
javascript实现客户端兼容各浏览器创建csv并下载的方法
Mar 23 Javascript
jQuery实现时尚漂亮的弹出式对话框实例
Aug 07 Javascript
常见的javascript跨域通信方法
Dec 31 Javascript
onmouseover事件和onmouseout事件全面理解
Aug 15 Javascript
Angular1.x复杂指令实例详解
Mar 01 Javascript
vue.js 获取当前自定义属性值
Jun 01 Javascript
[原创]js实现保存文本框内容为本地文件兼容IE,chrome,火狐浏览器
Feb 14 Javascript
jQuery 操作 HTML 元素和属性的方法
Nov 12 jQuery
JS中创建自定义类型的常用模式总结【工厂模式,构造函数模式,原型模式,动态原型模式等】
Jan 19 Javascript
在Vue项目中使用snapshot测试的具体使用
Apr 16 Javascript
Vue 列表页带参数进详情页的操作(router-link)
Nov 13 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
ThinkPHP php 框架学习笔记
2009/10/30 PHP
php购物网站支付paypal使用方法
2010/11/28 PHP
php调用Google translate_tts api实现代码
2013/08/07 PHP
数据结构之利用PHP实现二分搜索树
2020/10/25 PHP
jQuery UI Autocomplete 体验分享
2012/02/14 Javascript
js阻止默认事件与js阻止事件冒泡示例分享 js阻止冒泡事件
2014/01/27 Javascript
JS控制一个DIV层在指定时间内消失的方法
2014/02/17 Javascript
js操纵dom生成下拉列表框的方法
2014/02/24 Javascript
javascript实现在线客服效果
2015/07/15 Javascript
JS实现可拖曳、可关闭的弹窗效果
2015/09/26 Javascript
JS实现点击按钮获取页面高度的方法
2015/11/02 Javascript
javascript运动效果实例总结(放大缩小、滑动淡入、滚动)
2016/01/08 Javascript
jQuery改变form表单的action,并进行提交的实现代码
2016/05/25 Javascript
JavaScript中Form表单技术汇总(推荐)
2016/06/26 Javascript
如何利用模板将HTML从JavaScript中抽离
2016/10/08 Javascript
vue实现仿淘宝结账页面实例代码
2017/11/08 Javascript
JS实现为动态创建的元素添加事件操作示例
2018/03/17 Javascript
vue读取本地的excel文件并显示在网页上方法示例
2019/05/29 Javascript
JavaScript表格隔行变色和Tab标签页特效示例【附jQuery版】
2019/07/11 jQuery
d3.js实现图形缩放平移
2019/12/19 Javascript
[44:50]2018DOTA2亚洲邀请赛 4.1 小组赛 A组 TNC vs VG
2018/04/02 DOTA
Python学习笔记之os模块使用总结
2014/11/03 Python
Python + selenium自动化环境搭建的完整步骤
2018/05/19 Python
Django中的文件的上传的几种方式
2018/07/23 Python
Python测试网络连通性示例【基于ping】
2018/08/03 Python
Pycharm取消py脚本中SQL识别的方法
2018/11/29 Python
python 正则表达式贪婪模式与非贪婪模式原理、用法实例分析
2019/10/14 Python
俄罗斯卫浴采暖及维修用品超级市场:Dkrussia
2020/05/12 全球购物
Java 中访问数据库的步骤?Statement 和PreparedStatement 之间的区别?
2012/06/05 面试题
本科毕业生自我鉴定
2013/11/02 职场文书
企业办公室岗位职责
2014/03/12 职场文书
会计学习心得体会
2014/09/09 职场文书
2014年英语教研组工作总结
2014/12/06 职场文书
考试作弊检讨书范文
2015/01/27 职场文书
实习报告范文之电话客服岗位
2019/07/26 职场文书
导游词之台湾安平古堡
2019/12/25 职场文书