使用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时,该函数还可用。
您可能感兴趣的文章:- Flex控制弹出窗口拖动范围示例代码
- 使用POST方式弹出窗口的两种方法示例介绍
- 点击弹出层效果弹出窗口后网页背景变暗效果的实现代码
- 弹出窗口并且此窗口带有半透明的遮罩层效果
- javascript:window.open弹出窗口的位置问题
- Flex弹出窗口请求Action函数示例
- js实现弹出窗口、页面变成灰色并不可操作的例子分享
- JavaScript弹出窗口方法汇总
- 禁止iframe页面的所有js脚本如alert及弹出窗口等
- fckeditor粘贴Word时弹出窗口取消的方法
- jQuery实现弹出窗口中切换登录与注册表单
- JavaScript实现自动弹出窗口并自动关闭窗口的方法
- javascript弹出拖动窗口