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

时间:2024-04-19 10:02:13 

很多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就会出现这个问题了

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

猜你喜欢

  • sqlserver中求字符串中汉字的个数的sql语句

    2012-06-06 19:53:37
  • CSS中背景background的一些语法

    2009-03-24 21:02:00
  • Go语言Zap库Logger的定制化和封装使用详解

    2024-04-25 15:18:52
  • mysql 截取指定的两个字符串之间的内容

    2024-01-17 21:19:54
  • javabean servlet jsp实现分页功能代码解析

    2023-06-13 15:21:24
  • python3 实现函数写文件路径的正确方法

    2023-12-09 11:38:51
  • Python中使用logging和traceback模块记录日志和跟踪异常

    2023-09-20 16:08:51
  • D3.js 实现带伸缩时间轴拓扑图的示例代码

    2024-05-09 10:20:13
  • 基于存储过程的详细介绍

    2024-01-21 06:29:19
  • 使用coverage统计python web项目代码覆盖率的方法详解

    2023-05-23 18:24:35
  • python修改字典键(key)的方法

    2023-04-16 20:26:57
  • Python实现ATM简单功能的示例详解

    2021-07-17 12:06:46
  • Python中的字典合并与列表合并技巧

    2021-01-02 06:07:35
  • 给页面 unload 加上效果

    2009-03-12 12:32:00
  • pandas的排序、分组groupby及cumsum累计求和方式

    2023-07-20 07:00:39
  • SEM之医疗网站跳出率 逼迫访客跳出网站的六宗罪

    2012-03-05 20:13:36
  • Linux下mysql 5.6.17安装图文教程详细版

    2024-01-18 10:50:17
  • mysql中like % %模糊查询的实现

    2024-01-21 21:24:06
  • Python+Qt身体特征识别人数统计源码窗体程序(使用步骤)

    2021-06-03 10:40:54
  • python中将\\\\uxxxx转换为Unicode字符串的方法

    2023-11-04 15:20:07
  • asp之家 网络编程 m.aspxhome.com