出现“不能执行已释放的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 相关文章推荐
网页整体变灰白色(兼容各浏览器)实例
Apr 21 Javascript
jQuery 插件开发指南
Nov 14 Javascript
javascript实现禁止右键和F12查看源代码
Dec 26 Javascript
如何用javascript计算文本框还能输入多少个字符
Jul 29 Javascript
AngularJS 最常用的功能汇总
Feb 17 Javascript
JS及PHP代码编写八大排序算法
Jul 12 Javascript
微信小程序 教程之wxapp视图容器 swiper
Oct 19 Javascript
JavaScript获取URL参数的方法之一
Mar 24 Javascript
JS实现运动缓冲效果的封装函数示例
Feb 18 Javascript
node实现分片下载的示例代码
Oct 17 Javascript
微信JSSDK实现打开摄像头拍照再将相片保存到服务器
Nov 15 Javascript
微信小程序实现轨迹回放的示例代码
Dec 13 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内存溢出问题的解决方法
2013/06/25 PHP
解析php如何将日志写进syslog
2013/06/28 PHP
PHP CURL 内存泄露问题解决方法
2015/02/12 PHP
PHP中实现crontab代码分享
2015/03/26 PHP
来自chinaz的ajax获取评论代码
2008/05/03 Javascript
jQuery load方法用法集锦
2011/12/06 Javascript
jQuery处理xml格式的返回数据(实例解析)
2013/11/28 Javascript
手机开发必备技巧:javascript及CSS功能代码分享
2015/05/25 Javascript
鼠标经过子元素触发mouseout,mouseover事件的解决方案
2015/07/26 Javascript
jquery实现页面虚拟键盘特效
2015/08/08 Javascript
理解 JavaScript Scoping & Hoisting(二)
2015/11/18 Javascript
AngularJS入门教程之表格实例详解
2016/07/27 Javascript
JS设置CSS样式的方式汇总
2017/01/21 Javascript
canvas实现图片根据滑块放大缩小效果
2017/02/24 Javascript
Node.js调试技术总结分享
2017/03/12 Javascript
vue.js指令v-model使用方法
2017/03/20 Javascript
JavaScript 函数的定义-调用、注意事项
2017/04/16 Javascript
JavaScript实现滑动导航栏效果
2017/08/30 Javascript
vue实现引入本地json的方法分析
2018/07/12 Javascript
Node.JS在命令行中检查Chrome浏览器是否安装并打开指定网址
2019/05/21 Javascript
VUE子组件向父组件传值详解(含传多值及添加额外参数场景)
2020/09/01 Javascript
Python检测QQ在线状态的方法
2015/05/09 Python
python二分查找算法的递归实现方法
2016/05/12 Python
Python实现简单的多任务mysql转xml的方法
2017/02/08 Python
python操作mysql数据库
2017/03/05 Python
Python箱型图绘制与特征值获取过程解析
2019/10/22 Python
python为什么要安装到c盘
2020/07/20 Python
html5使用html2canvas实现浏览器截图的示例
2017/08/31 HTML / CSS
土耳其时尚潮流在线购物网站:Trendyol
2017/10/10 全球购物
Spartoo美国:欧洲排名第一的在线时装零售商
2019/12/12 全球购物
财务管理专业自荐信范文
2013/12/24 职场文书
五一家具促销方案
2014/01/10 职场文书
高中历史教学反思
2014/02/08 职场文书
贫困证明模板(3篇)
2014/09/16 职场文书
锦旗赠语
2015/06/23 职场文书
呐喊读书笔记
2015/06/30 职场文书