我正在使用类似于下面的代码(一个非常简化的版本)执行跨域获取请求。
var addData = function() {
$.ajax({
type:'GET',
url:'http://DifferentDomain.com/data.php',
data:'body',
success: function(data){
$('body').html(data);
}
});
}
现在,由于 IE 不支持 CORS,我需要使用XDomainRequest
iecors 插件,该插件效果很好,因为当 IE 出现故障时,XHttpRequest
它会切换到XDR
.
但是,我遇到的问题是,$('body').html(data);
这似乎仅在我在控制台中实时执行时才在 IE 中起作用,而不是在第一次调用它时才起作用$(document).ready
?(这适用于所有其他浏览器,因为它们支持 XHR)
我认为这是时间问题,所以我不确定如何解决这个问题,我是否使用 asetTimeout()
并为 IE 浏览器运行两次?请问有人可以提供一些建议吗?提前谢谢了。
编辑
我通过使用 setTimeout 执行它找到了一种解决方法,但仍然觉得这不是最好的解决方案,例如
setTimeout(function(){
addData();
},0);