出现“不能执行已释放的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实现轮显新闻标题链接
Aug 13 Javascript
Node.js:Windows7下搭建的Node.js服务(来玩玩服务器端的javascript吧,这可不是前端js插件)
Jun 27 Javascript
pace.js页面加载进度条插件
Sep 29 Javascript
js实现跨域的多种方法
Dec 25 Javascript
纯js实现手风琴效果
Apr 17 Javascript
Agularjs妙用双向数据绑定实现手风琴效果
May 26 Javascript
Vue使用vue-cli创建项目
Sep 01 Javascript
详解Webstorm 下的Angular2.0开发之路(图文)
Dec 06 Javascript
vue+Vue Router多级侧导航切换路由(页面)的实现代码
Dec 20 Javascript
jQuery选择器之层次选择器用法实例分析
Feb 19 jQuery
微信小程序之下拉列表实现方法解析(附完整源码)
Aug 23 Javascript
jQuery编写QQ简易聊天框
Aug 27 jQuery
推荐一些非常不错的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文件怎么打开 如何执行php文件
2011/12/21 PHP
php中FTP函数ftp_connect、ftp_login与ftp_chmod用法
2014/11/18 PHP
php is_writable判断文件是否可写实例代码
2016/10/13 PHP
六款帮助你实现惊艳视差滚动效果的jQuery插件
2012/09/14 Javascript
iframe调用父页面函数示例详解
2014/07/17 Javascript
JS+CSS实现可以凹陷显示选中单元格的方法
2015/03/02 Javascript
javascript实现的字符串与十六进制表示字符串相互转换方法
2015/07/17 Javascript
JavaScript焦点事件、鼠标事件和滚轮事件使用详解
2016/01/15 Javascript
jQuery获取多种input值的简单实现方法
2016/06/20 Javascript
jQuery on()方法绑定动态元素的点击事件无响应的解决办法
2016/07/07 Javascript
RGB和YUV 多媒体编程基础详细介绍
2016/11/04 Javascript
bootstrap datetimepicker2.3.11时间插件使用
2016/11/19 Javascript
js判断手机系统是android还是ios
2017/03/07 Javascript
详解webpack 配合babel 将es6转成es5 超简单实例
2017/05/02 Javascript
nodejs搭建本地服务器轻松解决跨域问题
2018/03/21 NodeJs
浅谈关于vue中scss公用的解决方案
2019/12/02 Javascript
three.js着色器材质的内置变量示例详解
2020/08/16 Javascript
在Python中使用zlib模块进行数据压缩的教程
2015/06/26 Python
浅谈Python中的可变对象和不可变对象
2017/07/07 Python
Python中pygal绘制雷达图代码分享
2017/12/07 Python
Python实现发送与接收邮件的方法详解
2018/03/28 Python
python topN 取最大的N个数或最小的N个数方法
2018/06/04 Python
浅谈解除装饰器作用(python3新增)
2018/10/15 Python
使用python实现简单五子棋游戏
2019/06/18 Python
Python箱型图绘制与特征值获取过程解析
2019/10/22 Python
Python利用全连接神经网络求解MNIST问题详解
2020/01/14 Python
有针对性的求职自荐信
2013/11/14 职场文书
生日宴会答谢词
2014/01/09 职场文书
入党积极分子介绍信
2014/01/17 职场文书
护理专科自荐书范文
2014/02/18 职场文书
后进生评语大全
2015/01/04 职场文书
教师节寄语2015
2015/03/23 职场文书
2016年第32个教师节红领巾广播稿
2015/12/18 职场文书
中国梦党课学习心得体会
2016/01/05 职场文书
2016学校先进集体事迹材料
2016/02/29 职场文书
Django路由层如何获取正确的url
2021/07/15 Python