出现“不能执行已释放的Script代码”错误的原因及解决办法


Posted in Javascript onAugust 29, 2007

很多web开发者或许都遇到过这样的问题,程序莫名奇怪出现“不能执行已释放Script的代码”,错误行1,列1.对于这种消息描述不着边,行列描述更是乱写的js错误,相信是所有调试js程序的朋友们最郁闷也最憎恨的事情!遇到这种问题,最简单的办法直接把错误贴到baidu或google那个小输入框中让他们先给点指点,再去解决,可这次却没有这么容易,在baidu搜索似乎很多人都遇到过这种问题,但是都是些什么qq空间错误,狂晕,或者就是只有问没有答的,闷!

   这种错误从何调起?后面没办法,又是猜测又是try...catch蹦错误,找了半天终于找到错误的位置,可是发现写的并没有什么问题,后来绞尽脑汁思考程序的解释过程,确依旧没有什么头绪。继续baidu,突然在某网页中看到一句话:当一个页面关闭时会自动释放页面的js。短短一句话给了我不小的启发。检查我的程序是否有页面的关闭或转向,发现是执行了转向,然后再回到这个页面时出现了错误。突然间觉得明白了。

场景:页面有a和b两个框架页iframe,在b页面中通过js将一个函数引用传入到a页面保存在a页面的一个变量中,a页面可以通过这个引用执行b页面的一些程序,当b页面刷新后由于a页面对b页面的引用已经丢失,但a中仍然保存着b页面之前传过来的引用,但当前的引用已经不能引用到b页面,这样在执行时就会出现“不能执行已经释放的Script代码”

解决办法:在a页面中加上容错处理,当引用出现错误时要将引用清空或指向一个默认的函数。另外在b页面再次载入时要重新给a页面传送函数引用,这样就不会出现这样的错误了。

或许这里的描述有些过于抽象了,看一个演示再看看代码就容易明白了,先test,然后return url,之后再test就会出现这个问题了

Javascript 相关文章推荐
Jquery中使用setInterval和setTimeout的方法
Apr 08 Javascript
javascript结合ajax读取txt文件内容
Dec 05 Javascript
jQuery中hover方法和toggle方法使用指南
Feb 27 Javascript
在JS方法中返回多个值的方法汇总
May 20 Javascript
js实现5秒倒计时重新发送短信功能
Feb 05 Javascript
jquery使用EasyUI Tree异步加载JSON数据(生成树)
Feb 11 Javascript
ES6新特性之字符串的扩展实例分析
Apr 01 Javascript
react native 文字轮播的实现示例
Jul 27 Javascript
js实现图片局部放大效果详解
Mar 18 Javascript
vue 实现搜索的结果页面支持全选与取消全选功能
May 10 Javascript
koa2服务端使用jwt进行鉴权及路由权限分发的流程分析
Jul 22 Javascript
浅谈Node新版本13.2.0正式支持ES Modules特性
Nov 25 Javascript
推荐一些非常不错的javascript学习资源站点
Aug 29 #Javascript
070823更新的一个[消息提示框]组件 兼容ie7
Aug 29 #Javascript
找到了一篇jQuery与Prototype并存的冲突的解决方法
Aug 29 #Javascript
javascript动画效果类封装代码
Aug 28 #Javascript
Google韩国首页图标动画效果
Aug 26 #Javascript
javascript在一段文字中的光标处插入其他文字
Aug 26 #Javascript
有一段有意思的代码-javascript现实多行信息
Aug 26 #Javascript
You might like
php项目打包方法
2008/02/18 PHP
关于PHP二进制流 逐bit的低位在前算法(详解)
2013/06/13 PHP
Zend Framework教程之Autoloading用法详解
2016/03/08 PHP
PHP实现生成推广海报的方法详解
2018/03/14 PHP
JQuery Tab选项卡效果代码改进版
2010/04/01 Javascript
js导航菜单(自写)简单大方
2013/03/28 Javascript
JavaScript打印iframe内容示例代码
2013/08/20 Javascript
js的.innerHTML = ""IE9下显示有错误的解决方法
2013/09/16 Javascript
jQuery+HTML5实现手机摇一摇换衣特效
2015/06/05 Javascript
JS实现3D图片旋转展示效果代码
2015/09/22 Javascript
AngularJS中处理多个promise的方式
2016/02/02 Javascript
微信小程序 省市区选择器实例详解(附源码下载)
2017/01/05 Javascript
Angular.JS中select下拉框设置value的方法
2017/06/20 Javascript
JavaScript对象_动力节点Java学院整理
2017/06/23 Javascript
Angular实现图片裁剪工具ngImgCrop实践
2017/08/17 Javascript
详解nodejs通过代理(proxy)发送http请求(request)
2017/09/22 NodeJs
vue项目中使用bpmn-自定义platter的示例代码
2020/05/11 Javascript
Python入门篇之字符串
2014/10/17 Python
发布你的Python模块详解
2016/09/15 Python
python数字图像处理实现直方图与均衡化
2018/05/04 Python
Python使用pyautocad+openpyxl处理cad文件示例
2019/07/11 Python
处理python中多线程与多进程中的数据共享问题
2019/07/28 Python
python list多级排序知识点总结
2019/10/23 Python
CSS3地图动态实例代码(圆圈向外扩散)
2018/06/15 HTML / CSS
Canvas在超级玛丽游戏中的应用详解
2021/02/06 HTML / CSS
欧洲顶级体育电子商务网站:SportsShoes.com
2018/03/27 全球购物
电钳专业个人求职信
2014/01/04 职场文书
企业党员公开承诺书
2014/03/26 职场文书
习总书记三严三实学习心得体会
2014/10/13 职场文书
2015年国际护士节演讲稿
2015/03/18 职场文书
2016公司年会通知范文
2015/04/25 职场文书
2016年小学圣诞节活动总结
2016/03/31 职场文书
担保书怎么写 ?
2019/04/22 职场文书
python基础详解之if循环语句
2021/04/24 Python
Windows 64位 安装 mysql 8.0.28 图文教程
2022/04/19 MySQL
win10电脑关机快捷键是哪个 win10快速关机的几种方法
2022/08/14 数码科技