我在Google Chrome上遇到iframe的onLoad事件时出现问题。
我为其“src”属性创建了一个iframe并设置了值,以便从服务器获取文件。
当服务器正在处理时,会显示一个加载框,直到客户端获取返回的文件。
我尝试使用iframe的onLoad事件来检测客户端何时获取文件以关闭该等待框,但在Google Chrome上,该事件处理程序无效。
使用Firefox,当客户端获取文件时,将自动显示“保存到”弹出窗口并触发事件“加载”,但这不会发生在Chrome上。
使用IE,当客户端获取文件时,将触发事件“readystatechange”,但Chrome上不会发生这种情况。
main.loading.show();
var body = Ext.getBody(), frame;
var frameComp = {
tag : 'iframe',
cls : 'x-hidden',
id : 'downloaderframe',
name : 'downloaderframe',
src : url,
onload : 'main.loading.hide();'
};
frame = body.createChild(frameComp);
frame.on('readystatechange', function () {
alert(1);
main.loading.hide();
});
frame.on('load', function () {
alert(2);
main.loading.hide();
});
任何帮助都必须得到赞赏。谢谢。
答案 0 :(得分:1)
这是Google Chrome错误。我已经使用此插件http://johnculviner.com/jquery-file-download-plugin-for-ajax-like-feature-rich-file-downloads/和Cookie解决了这个问题。