Ответ 1
Похоже, проблема была в транспортном объекте, который IE8 + хочет использовать. jQuery использует либо ActiveXObject (для IE), либо XMLHttpRequest (все остальные), но для IE8 и выше требуется XDomainRequest для ajax.
Что вы можете сделать, так это вернуть пользовательский объект xhr через $.ajaxSettings.xhr, как это,
// override xhr for browser that use XDR
if ('XDomainRequest' in window && window.XDomainRequest !== null) {
// override default jQuery transport
jQuery.ajaxSettings.xhr = function() {
try { return new XDomainRequest(); }
catch(e) {
console.log('test');
}
};
// also, override the support check
jQuery.support.cors = true;
}
Я вытащил этот код из обсуждения этого вопроса здесь: http://graphicmaniacs.com/note/getting-a-cross-domain-json-with-jquery-in-internet-explorer-8-and-later/
Определенно взгляните на это, если вы считаете, что испытываете ту же проблему.