Jquery - як уникнути конфлікти з іншими бібліотеками

Бібліотека jQuery і фактично всі її плагіни містяться в межах простору імен jQuery. Як правило, глобальні об'єкти зберігаються в просторі імен jQuery також, таким чином, неможливо отримати конфлікт між jQuery і будь-який інший бібліотекою (як prototype.js, MooTools або YUI).

Приміщення jQuery У безконфліктно Режим

Коли Ви ставите jQuery в режим без конфліктів, у Вас є опція присвоєння нового імені змінної, щоб замінити $ псевдонімом.

У коді вище, $ повернеться назад до своїм значенням у вихідній бібліотеці. Ви все ще будете в змозі використати повне ім'я функції jQuery. так само як і новий псевдонім $ j в решті частини Вашого застосування. Новий псевдонім можна назвати як завгодно, на Ваш розсуд: jq. $ J. awesomeQuery і т.д.

Нарешті, якщо Ви не хочете визначати інший варіант до повного імені функції jQuery (Вам дійсно подобається використовувати $ і не турбуватися про використання іншої бібліотеки з методом $), то є й інший підхід, який Ви могли б спробувати: просто додайте $ як параметр, який передається в Вашу функцію jQuery (document) .ready (). Це найбільш підходящий варіант в разі, коли Ви як і раніше хочете отримати переваги їх короткого коду jQuery, але не хочете викликати конфлікти з іншими бібліотеками.

Це, ймовірно, ідеальне рішення для більшої частини Вашого коду, якщо вважати, що буде менше коду, який необхідно змінити, щоб досягти повної сумісності.

Включення jQuery Перед Іншими Бібліотеками

Фрагменти коду вище покладаються на jQuery, що завантажується після того, як prototype.js завантажена. Якщо Ви включаєте jQuery перед іншими бібліотеками, можна використовувати jQuery коли Ви робите деяку роботу з jQuery, але $ визначатиме значення в іншій бібліотеці. Немає ніякої потреби звільняти псевдонім $. викликаючи jQuery.noConflict ().

Схожі статті