我最近重构了一些 ajax 代码以使其异步。它以前工作得很好,但我想使用 jQuery 承诺,所以我对它进行了 jQuerified。然而,现在,ajax 调用可以在除 IE 之外的所有浏览器中使用。
IE9 会在为 ajax 函数分配变量名的情况下引发错误。IE中的错误是:
“对象不支持第 99 行的此方法或属性。”
这是发生错误的块:
if (screen.width > 525 && svgSupported) {
$loadingSvg = $.ajax({
type: 'GET',
url: 'images/mypicture.svg',
dataType: 'xml',
success: function(data){
console.log("Ajax request successfully returned: " + data);
console.log(data);
},
error: function(data){
console.log("Ajax request failed: " + data);
}
});
}
我已经尝试了其他人在类似情况下建议的一些明显的事情,比如将所有内容包装在 jQ $(document).ready 中。那不能解决问题。该$loadingSvg
变量是在脚本顶部全局声明的,不是吗。有什么想法吗,伙计们?