不能运行已经释放的scipt代码

问题描述

前一段时间项目中需要做一个自定义表单编辑器(类似下图的一个东东),因为我们前端是基于四列table布局,因此这个编辑器可以拖动一些封装好的组件到左侧表格相应的位置,当然拖动过程中有相应的交互提示,拖放好的组件还可以通过点击选中为其配置属性。

不能运行已经释放的scipt代码_第1张图片
自定义表单编辑器

上面是一大段废话,有相关开发需求或者感兴趣的小伙伴可以私信我交流。

在做这个自定义表单编辑器的过程中,因为要处理母子页面的相互访问问题,所以遇到了“不能运行已经释放的script代码”错误(没办法,公司原因必须兼容IE浏览器)。

在看到这个问题的时候头就比较大,因为明明chrome浏览器毫无问题,放到IE浏览器下就是各种报错,困扰了很长一段时间。

user166390 在stackoverflow (参考资料1) 这样描述该问题的产生原因:

The error is caused when the 'parent' window of script is disposed (ie: closed) but a reference to the script which is still held (such as in another window) is invoked.

为了说清楚问题的产生原因,写了三个简单的示例页面:

```

代码

```


解决方案



参考资料

1. stackoverflow - What causes the error “Can't execute code from a freed script”



你可能感兴趣的:(不能运行已经释放的scipt代码)