ie9下关闭弹出窗口出现__flash__removeCallback未定义错

网络编程 2025-03-14 17:40www.168986.cn编程入门

在关闭弹出窗口时遇到“__flash__removeCallback”未定义的错误,这个问题确实让人头疼。当你使用swfupload作为上传组件,artdialog作为弹出窗口时,这个错误可能会反复出现。

这个错误的原因在于,当flash对象需要从页面中移除时,它会尝试调用"__flash__removeCallback"这个函数,但在某些情况下,这个函数并没有被正确定义。虽然网上有解决方案建议覆写"__flash__removeCallback"函数的定义,但在你的环境下,这个方法似乎并不奏效。

问题的核心在于,当你使用artdialog关闭流程,即使用html("")将内容置空时,flash对象也被一并移除了。包含"__flash__removeCallback"函数定义的js文件可能也被同时移除,导致无法找到该函数。在关闭窗口前,需要确保先移除flash对象。

一个可能的解决方案是,在移除包含flash对象的父对象之前,直接进行移除操作。例如,你可以使用类似“div.remove()”这样的代码来移除包含flash的div元素。

还需要确保"__flash__removeCallback"函数始终被正确定义。你可以尝试在代码中添加如下定义:

```javascript

window["__flash__removeCallback"] = function (instance, name) {

try {

if (instance) {

instance[name] = null;

}

} catch (flashEx) {

}

};

```

这段代码的目的是修复Flash自身的清理代码,使其在从页面中移除SWFMovie时不会显示错误。你需要确保这段代码在你的JS文件中被正确引入,并且在移除flash对象时,该函数仍然可用。

解决这个问题的关键在于确保flash对象在被移除时,"__flash__removeCallback"函数能够被正确调用。希望这些解决方案能够帮助你解决问题,让弹出窗口的关闭流程更加顺畅。

上一篇:如何写ASP入库小偷程序 下一篇:没有了

Copyright © 2016-2025 www.168986.cn 狼蚁网络 版权所有 Power by