Actions
Bug #3282
closedjQuery conflicts result in CB or 3rd party extension failing
Description
Due to different version of jQuery loading CB needs a deeper noConflict so CB can continue to function as normally.
Files
Actions
Added by krileon almost 13 years ago. Updated over 12 years ago.
Description
Due to different version of jQuery loading CB needs a deeper noConflict so CB can continue to function as normally.
Files
3282.patch (5.95 KB) 3282.patch | krileon, 17 February 2012 19:09 | ||
sobipro_header_with_patch.txt (7.24 KB) sobipro_header_with_patch.txt | krileon, 17 February 2012 19:21 | ||
3282_rev1.patch (3.65 KB) 3282_rev1.patch | krileon, 17 February 2012 19:37 |
Proposed fix adds 2 new header functions to add custom html before all headers as well as after all headers. In addition to this it places CB in a deeper noconflict, caches previous jquery, redefines jquery to CBs jquery, loads in CBs jquery, then reverts jquery back to its previous values (if they exist, otherwise CBs jquery will remain as jquery). This allows CB to function without conflicting by other extensions jquery. Implementation is fully commented to further explain exactly what is happening.
Revision 1 uses existing functions without adding new functions to header.
r1761 and r1762 implement this patch in a slightly modified way to work also with CB modules on CB pages with same jQuery plugin, while keeping compatibility, and avoiding javascript warnings.
There is still a pending pull request for Joomla Framework pending to further improve non-conflicts between 3pds here https://github.com/joomla/joomla-platform/pull/736
r1780 Renames J_JQUERY_LOADED to CB_JQUERY_LOADED as we are now deep-non-conflict and wish to make sure we get our own one to avoid versions conflicts.