Javascript interval and iframe

Javascript interval and iframe

本文关键字:iframe and interval Javascript      更新时间:2023-09-26

我有一个 asp.net 页面,可以在jqueryWindow(iframe)中打开一个页面,加载一些内容和一个按钮。当用户单击按钮时,我调用一个函数来执行一些工作,并在单击函数结束时调用一个 setInterval 函数。间隔函数工作正常,当窗口(iFrame)打开时,当我关闭窗口时,间隔在Firefox中停止,此错误将显示在控制台中:

attempt to run compile-and-go script on a cleared scope

但是它的工作原理是IE。

有什么想法吗?

后期描述:间隔是函数在父级中。但是我使用了Firebug,令人惊讶的是,该函数将在其间隔内被调用,但它返回错误并且有时工作正常。:O

Firefox 已经垃圾回收了 iframe 的范围,因为它不再存在。其他浏览器可能不会以相同的方式执行操作。

尝试拨打top.setInterval(...),而不仅仅是setInterval(...)

如果从 iframe 调用该函数,则在 iframe 关闭后根本不应该运行,因为它的全局上下文已被销毁。我希望该函数根本不会在任一浏览器中运行,也不会抛出错误。

也许这是一个错误?无论如何,正如Kolink所说,尝试从父级(顶部)调用它,但是如果它试图引用弹出窗口范围内的对象或变量,您将(应该?)收到错误。