__flash__removeCallback 未定义错误

本文解决了SwfUpload组件与ArtDialog弹窗组件在使用过程中产生的“__flash__removeCallback”未定义错误问题。通过确保回调函数的定义存在,并在关闭窗口前移除Flash对象来避免错误。
摘要由CSDN通过智能技术生成

使用swfupload作为上传组件,artdialog作为弹出窗口,在关闭弹出窗口时,出现“__flash__removeCallback”未定义错误。而且是关了又出现。网上有些解决方案,主要就是说覆写“__flash__removeCallback“函数的定义,这个在swfupload组件中已经有了:

// Fix Flashes own cleanup code so if the SWFMovie was removed from the page
// it doesn't display errors.
window["__flash__removeCallback"] = function (instance, name) {
try {
   if (instance) {
    instance[name] = null;
   }
  } catch (flashEx) {
  }
};

可是在我这样的环境下无效。这个错误的解释就是flash对象在移除文档时,要调用这个回调函数,却找不到函数定义。查看了下artdialog的关闭流程,是html(“”),把内容置空。

问题可能出在这,内容置空flash对象也就被移除了。而定义有__flash__removeCallback函数的js文件也被移除了。所以说找不到。解决方法就是,在关闭窗口前先移除flash对象。

直接移除包含flash对象的父对象。如div.remove();

所以主要的解决方法就是,一确保有上面那段函数定义,二确保移除flash时,该函数还可用。

转载于:https://my.oschina.net/wzzz/blog/330231

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值