我有一个骨干项目,它正在调用返回 JSON 数据的 Google App Engine 上的服务。没有调用主干集合“解析”,也没有在主干中收到错误...这个问题似乎仅限于 IE8,因为 IE7 和 IE9 确实有效。Chrome、Firefox 等……都可以正常工作。
问问题
769 次
2 回答
0
这原来是 IE8 中的跨域问题。我通过将 XDomainRequest 添加到我的主干集合中的初始化来修复它。
initialize: function(){
$this = this;
//fix for IE8 and IE9
if ($.browser.msie && parseInt($.browser.version, 10) <= 9 && window.XDomainRequest) {
var xdr = new XDomainRequest();
xdr.open("get", "http://localhost:8080/service");
xdr.onload = function(){
$this.parse($.parseJSON(xdr.responseText));
};
xdr.send();
}
},
于 2012-12-18T23:26:19.157 回答
0
对于任何未来的用户,我建议查看这个插入式脚本来扩展 Backbone 的 ajax 功能并自动添加对旧 IE 浏览器的支持。与 OP 的答案类似,因为它添加了 xDomainRequests,但对您的工作较少。:-)
于 2015-08-06T15:29:24.633 回答