Make sure that the ActiveX exception is caught if it's unable to be loaded. Fixes #2849.

This commit is contained in:
jeresig 2010-01-05 11:35:11 -05:00
parent b2289f3ec1
commit 3f648c4e3a

View file

@ -179,9 +179,14 @@ jQuery.extend({
// so we use the ActiveXObject when it is available // so we use the ActiveXObject when it is available
// This function can be overriden by calling jQuery.ajaxSetup // This function can be overriden by calling jQuery.ajaxSetup
xhr: function() { xhr: function() {
return window.XMLHttpRequest && window.location.protocol !== "file:" || window.ActiveXObject ? if ( window.XMLHttpRequest && (window.location.protocol !== "file:" || !window.ActiveXObject) ) {
new window.XMLHttpRequest() : return new window.XMLHttpRequest();
new window.ActiveXObject("Microsoft.XMLHTTP");
} else {
try {
return new window.ActiveXObject("Microsoft.XMLHTTP");
} catch(e) {}
}
}, },
accepts: { accepts: {
xml: "application/xml, text/xml", xml: "application/xml, text/xml",
@ -326,6 +331,10 @@ jQuery.extend({
// Create the request object // Create the request object
var xhr = s.xhr(); var xhr = s.xhr();
if ( !xhr ) {
return;
}
// Open the socket // Open the socket
// Passing null username, generates a login popup on Opera (#2865) // Passing null username, generates a login popup on Opera (#2865)
if ( s.username ) { if ( s.username ) {