Могут ли DokuWiki и jQuery играть вместе? - PullRequest
8 голосов
/ 29 января 2009

У меня возникли проблемы с тем, чтобы jQuery хорошо играл с DokuWiki - кто-нибудь уже сделал это успешно?

В данный момент, включая повторное использование jQuery во всех видах нарушений функций JS, у меня возникают проблемы с поиском источника проблемы. Что нужно искать, чтобы конфликтовать с jQuery?

Ответы [ 4 ]

16 голосов
/ 29 января 2009

Я лично не знаком с DokuWiki, но если что-то ломается, когда вы включаете jQuery, то это, вероятно, конфликт с переменной '$' в jQuery. Вы можете использовать jQuery метод noConflict, чтобы обойти это, больше информации здесь: http://docs.jquery.com/Using_jQuery_with_Other_Libraries

См. Также этот пост переполнения стека: jQuery & Prototype Conflict

6 голосов
/ 11 сентября 2009

Есть также плагин, который добавляет JQuery к DokuWiki: http://www.dokuwiki.org/plugin:jquery

6 голосов
/ 29 января 2009

Обычно вы можете избежать любых конфликтов jQuery, используя следующее сразу после загрузки jquery.js:

jQuery.noConflict();

Тогда он не будет перезаписывать переменную $, которая чаще всего является источником проблем в этих конфликтах библиотеки JS. Вы должны будете вызывать функции jQuery, используя jQuery. Примеры:

jQuery(function() { ... }); // $(function ...
jQuery(".klass").hide();    // $(".klass" ...
0 голосов
/ 27 августа 2011
jQuery.noConflict();

Тогда вы можете использовать jQuery("your element selector") или что угодно вместо $. Чтобы использовать более приятный $ в своем коде, просто оберните вокруг него функцию следующим образом:

jQuery.noConflict()
(function($) {
  $("your element selector").whatever();
})(jQuery)

Дополнительные преимущества, описанные в Ответах на В чем преимущество упаковки функции jquery в замыкание?

...