Может ли DokuWiki & jQuery играть вместе?

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

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

4 ответов


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

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


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

jQuery.noConflict();

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

jQuery(function() { ... }); // $(function ...
jQuery(".klass").hide();    // $(".klass" ...

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


jQuery.noConflict();

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

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

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