Похоже каждый создает xhr-объект так, как ему хочется
jQuery 1.3.2
xhr:function(){
return window.ActiveXObject ? new ActiveXObject("Microsoft.XMLHTTP") : new XMLHttpRequest();
},
MooTools 1.2.1
Browser.Request = function(){
return $try(function(){
return new XMLHttpRequest();
}, function(){
return new ActiveXObject('MSXML2.XMLHTTP');
});
};
Prototype 1.6.0.2
getTransport: function() {
return Try.these(
function() {return new XMLHttpRequest()},
function() {return new ActiveXObject('Msxml2.XMLHTTP')},
function() {return new ActiveXObject('Microsoft.XMLHTTP')}
) || false;
},
Ext JS 2.2
activeX:[
'MSXML2.XMLHTTP.3.0',
'MSXML2.XMLHTTP',
'Microsoft.XMLHTTP'
]
Fleegixjs
var t = [
'Msxml2.XMLHTTP.6.0',
'MSXML2.XMLHTTP.3.0',
'Microsoft.XMLHTTP'
];
JavaScriptMVC 1.5.2
MVC.Ajax.factory = function(){ return window.ActiveXObject ? new ActiveXObject("Microsoft.XMLHTTP") : new XMLHttpRequest();};
AJAX.OOP 1.0.4
this._transport = (new XMLHttpRequest() || new ActiveXObject('Msxml2.XMLHTTP') || new ActiveXObject('Microsoft.XMLHTTP') || null);
June 1.1
var createXmlHttp = function()
{
///<summary>Creates an XMLHttpRequest object.</summary>
///<returns type="Object" />
try { return new XMLHttpRequest(); } catch(ex){}
try { return new ActiveXObject("Msxml2.XMLHTTP"); } catch(ex){}
try { return new ActiveXObject("Microsoft.XMLHTTP"); } catch(ex) {
return xmlHttpNotImplemented();
}
return null;
};
Midori (r80)
try { this.request = new XMLHttpRequest() }
catch (e)
{ try { this.request = new ActiveXObject('Msxml2.XMLHTTP') }
catch (e)
{ this.request = new ActiveXObject('Microsoft.XMLHTTP') }
}
DOMAssistant 2.7.4
var XMLHttpMS = ["Msxml2.XMLHTTP.6.0", "Msxml2.XMLHTTP.3.0", "Msxml2.XMLHTTP", "Microsoft.XMLHTTP"];
Dojo
d._XMLHTTP_PROGIDS = ['Msxml2.XMLHTTP', 'Microsoft.XMLHTTP', 'Msxml2.XMLHTTP.4.0'];