我使用jquery文件上传文件,即ajaxuploader没有任何flash .. 它在加载jquery时加载iframe,但它在IE 6中不起作用,但它在IE 7中工作正常 onload函数在IE 6中不起作用,
我使用了ajaxuploader.js文件来执行此操作,,,请帮助
var name = 'iframe_au' + get_uid();
//创建iframe,所以我们不需要刷新页面以避免在fileupload中回发
this.iframe = $('<iframe name="' + name + '"></iframe>')
.css('display', 'none')
.appendTo('body');
onload事件
var iframe = this.iframe;
iframe.load(function(){
var response = iframe.contents().find('body').text();
});
但是这个onload事件没有在IE 6中触发,但它可以在IE7等中运行。
答案 0 :(得分:1)
使用给定的信息解决问题有点困难,但您可以尝试使用window.setTimeout
包装加载函数。
我的猜测是IE6在成功添加到浏览器之前尝试加载iframe(并已加载到dom中)。
示例 http://jsfiddle.net/MnUSH/1/
$(function() {
var name = 'iframe_au' + new Date().getTime(); //get_uid()
this.iframe = $('<iframe name="' + name + '"></iframe>').css('display', 'block').appendTo('body');
this.iframe.attr('src', '/somepage'); //This will return a 404 page
var iframe = this.iframe;
window.setTimeout(function() {
iframe.load(function() {
var response = iframe.contents().find('body').text();
alert(response); //Alerting response
});
}, 200);
});