出现“不能执行已释放的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 相关文章推荐
JavaScript 特殊字符
Apr 05 Javascript
JQuery的一些小应用收集
Mar 27 Javascript
Ajax执行顺序流程及回调问题分析
Dec 10 Javascript
js去字符串前后空格5种实现方法及比较
Apr 03 Javascript
Jquery 实现表格颜色交替变化鼠标移过颜色变化实例
Aug 28 Javascript
JavaScript实现的购物车效果可以运用在好多地方
May 09 Javascript
jQuery中slice()方法用法实例
Jan 07 Javascript
JS实现不使用图片仿Windows右键菜单效果代码
Oct 22 Javascript
使用angularjs创建简单表格
Jan 21 Javascript
url中的特殊符号有什么含义(推荐)
Jun 17 Javascript
微信小程序 条件渲染详解
Oct 09 Javascript
JavaScript如何判断input数据类型
Feb 06 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 define函数的使用说明
2008/08/27 PHP
PHP 配置open_basedir 让各虚拟站点独立运行
2009/11/12 PHP
PHP新建类问题分析及解决思路
2015/11/19 PHP
DWZ刷新dialog解决方法
2013/03/03 Javascript
jQuery判断元素上是否绑定了指定事件的方法
2015/03/17 Javascript
详解JavaScript中的构造器Constructor模式
2016/01/14 Javascript
使用postMesssage()实现iframe跨域页面间的信息传递
2016/03/29 Javascript
js Canvas绘制圆形时钟教程
2017/02/06 Javascript
JS简单实现数组去重的方法示例
2017/03/27 Javascript
ES6中Proxy与Reflect实现重载(overload)的方法
2017/03/30 Javascript
vue计算属性及使用详解
2018/04/02 Javascript
JS常见构造模式实例对比分析
2018/08/27 Javascript
Vue实现一个图片懒加载插件
2019/03/11 Javascript
详解微信小程序-canvas绘制文字实现自动换行
2019/04/26 Javascript
详解微信小程序-扫一扫 wx.scanCode() 扫码大变身
2019/04/30 Javascript
es6函数中的作用域实例分析
2020/04/18 Javascript
python多线程http下载实现示例
2013/12/30 Python
用Python脚本来删除指定容量以上的文件的教程
2015/05/04 Python
如何处理Python3.4 使用pymssql 乱码问题
2016/01/08 Python
Python多线程爬虫简单示例
2016/03/04 Python
Django压缩静态文件的实现方法详析
2018/08/26 Python
使用Python发现隐藏的wifi
2020/03/04 Python
Pycharm中切换pytorch的环境和配置的教程详解
2020/03/13 Python
使用keras根据层名称来初始化网络
2020/05/21 Python
简单html5代码获取地理位置
2014/03/31 HTML / CSS
AmazeUI折叠式卡片布局,整合内容列表、表格组件实现
2020/08/20 HTML / CSS
中学教师实习自我鉴定
2013/09/28 职场文书
技术合作协议书范本
2014/04/18 职场文书
2014年秋季开学寄语
2014/08/02 职场文书
2014年大学生村官工作总结
2014/11/19 职场文书
大三学生英语考试作弊检讨书
2015/01/01 职场文书
监考失职检讨书
2015/01/26 职场文书
在校证明模板
2015/06/17 职场文书
2015年度对口支援工作总结
2015/07/22 职场文书
驾驶员管理制度范本
2015/08/06 职场文书
一文读懂go中semaphore(信号量)源码
2021/04/03 Golang