Bug Tracker

Opened 11 years ago

Closed 11 years ago

#8033 closed bug (fixed)

jQuery 1.4.4+ fails to load on pages with old Prototype (<= 1.5) or Current Prototype + Scriptaculous in IE

Reported by: SlexAxton Owned by: SlexAxton
Priority: blocker Milestone: 1.5.1
Component: core Version: 1.4.4
Keywords: prototype, noconflict Cc:
Blocked by: Blocking:

Description

This seems to be because old Prototypes would override the getelementsbyclassname native function, and inside of it, they'd use the $ sign.

In old versions of jQuery (1.4.2) our sizzle came before we set our global variables, now it comes after. That seems to break.

Examples

http://jsfiddle.net/Bd7HU/7/ - jquery 1.4.4 and prototyp 1.5 fails http://jsfiddle.net/wMx9E/1/ - jquery 1.4.2 and prototype 1.5 ok http://jsfiddle.net/2zEj5/1/ - jquery 1.4.4 and prototype 1.6 ok

I'd say not to worry about this, but it's a really easy fix. Just move

  window.jQuery = window.$ = jQuery;

to the end of the file... I'll submit a patch.

Change History (7)

comment:1 Changed 11 years ago by SlexAxton

Component: unfiledcore
Keywords: prototype noconflict added
Milestone: 1.next1.5
Owner: set to SlexAxton
Priority: undecidedlow
Status: newassigned

comment:2 Changed 11 years ago by SlexAxton

Hmmm, looks like the issue _does_ happen in recent versions of Prototype as well.

http://jsfiddle.net/dU7FB/3/

The same fix of moving the jQuery window leak to the bottom works. The build process is the only thing that makes this nontrivial.

Version 1, edited 11 years ago by SlexAxton (previous) (next) (diff)

comment:3 Changed 11 years ago by SlexAxton

I submitted a patch that passes all tests for this here:

https://github.com/jquery/jquery/pull/204

comment:4 Changed 11 years ago by SlexAxton

Summary: jQuery 1.4.4+ fails to load on pages with old Prototype (<= 1.5)jQuery 1.4.4+ fails to load on pages with old Prototype (<= 1.5) or Current Prototype + Scriptaculous in IE

comment:5 Changed 11 years ago by jitter

Milestone: 1.5.1

comment:6 Changed 11 years ago by john

Priority: lowblocker

comment:7 Changed 11 years ago by john

Resolution: fixed
Status: assignedclosed

Landed.

Note: See TracTickets for help on using tickets.