問題は、IE8+ が使用するトランスポート オブジェクトにあったようです。jQuery は ActiveXObject (IE 用) または XMLHttpRequest (その他すべて) のいずれかを使用しますが、IE 8 以降では ajax 用に XDomainRequest が必要です。
できることは、次のように $.ajaxSettings.xhr を介してカスタム 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/
同じ問題が発生していると思われる場合は、必ず確認してください。