Bug Tracker

Ticket #2167 (closed bug: duplicate)

Opened 11 months ago

Last modified 4 months ago

Opera Mobile fails to initialize XMLHttpRequest

Reported by: paulu Assigned to: anonymous
Type: bug Priority: major
Milestone: 1.2.3 Component: ajax
Version: 1.2.2 Keywords: opera mobile, ajax
Cc: Needs: Review

Description

Using the ajax features of jQuery on Opera Mobile 8.65 fails, since jQuery detects a window.ActiveXObject, tries to create an xmlhttp object using the ActiveXObject but fails. Apart from this, jQuery works fine on Opera Mobile.

Changing line 2638 in jquery 1.2.2 from

var xml = window.ActiveXObject ? new ActiveXObject("Microsoft.XMLHTTP") : new XMLHttpRequest();

to

var xml = window.ActiveXObject && !jQuery.browser.opera ? new ActiveXObject("Microsoft.XMLHTTP") : new XMLHttpRequest();

fixes the problem for me. Output from the attached file in Opera Mobile before replacing the above line:

Test document
version: 8.65
safari: false
opera: true
msie: false
mozilla: false
window.ActiveXObject: [object PluginObject]

Output after replacing the line:

Test document
version: 8.65
safari: false
opera: true
msie: false
mozilla: false
window.ActiveXObject: [object PluginObject]
Test document

Attachments

opera_test.html (0.6 kB) - added by paulu 11 months ago.

Change History

Changed 11 months ago by paulu

Changed 4 months ago by cmcnulty

See #3087 for a better more flexible fix than the one provided here.

Changed 4 months ago by flesler

  • status changed from new to closed
  • resolution set to duplicate

The XHR creation process is exposed since [5805] allowing overriding. You can add this code externally.

Note: See TracTickets for help on using tickets.