不能执行已释放的Script的代码(ie错误)

今天在ie浏览上发现一个错误 ,如上,没法解决.后来查了下资料,发现是window.top.listAllData的问题 代码如下:


因为发现在ie中,当一个ifame关闭时,这个iframe中的对象也随之销毁;

例如当前这个iframe的window.top.listAllData = new Array() 这段代码在iframe关闭之后,window.top.listAllData被赋值的对象就没了,但是window.top.listAllData的声明还在.类似于指针还在,指针指向的对象已经销毁.所以当这段js代码在一个新的iframe中复用时,window.top.listAllData已经无法指向原来的对象了.

解决办法:把window.top.listAllData = new Array(); 这段代码放在top页面对应的js代码中,然后new array()后的对象就没法销毁了.代码如下:

var listAllData = new Array();

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容