0

我正在使用类似于下面的代码(一个非常简化的版本)执行跨域获取请求。

var addData = function() {
    $.ajax({
      type:'GET',
      url:'http://DifferentDomain.com/data.php',
      data:'body',
      success: function(data){
        $('body').html(data);
      }
    });
}

现在,由于 IE 不支持 CORS,我需要使用XDomainRequestiecors 插件,该插件效果很好,因为当 IE 出现故障时,XHttpRequest它会切换到XDR.

但是,我遇到的问题是,$('body').html(data);这似乎仅在我在控制台中实时执行时才在 IE 中起作用,而不是在第一次调用它时才起作用$(document).ready(这适用于所有其他浏览器,因为它们支持 XHR)

我认为这是时间问题,所以我不确定如何解决这个问题,我是否使用 asetTimeout()并为 IE 浏览器运行两次?请问有人可以提供一些建议吗?提前谢谢了。

编辑

我通过使用 setTimeout 执行它找到了一种解决方法,但仍然觉得这不是最好的解决方案,例如

 setTimeout(function(){
   addData();
 },0);
4

1 回答 1

0

我通过使用 setTimeout 执行它找到了一种解决方法,但仍然觉得这不是最好的解决方案,例如

 setTimeout(function(){
   addData();
 },0);
于 2013-01-29T23:08:56.520 回答