2010-03-09 5 views
1

прототип прототипа Dokuwiki, мой сайт использует JQuery.Intergating dokuwiki и jquery

Если есть другой способ изменить Dokuwiki javascript, вместо этого используйте jQuery.noConflict() или/и var $ j = jQuery на моем jQuery?

Я открываю все файлы .js в Dokuwiki, ища "$ (" и заменяю его на "$ DW (", и он работает как прелести, но мне приходилось иметь дело с каждым плагином Dokuwiki, в котором есть javascript. .

Итак, как изменить «$» в прототипе найти библиотеки/Dokuwiki?

ответ

1

Вы делаете это неправильный путь вокруг. Достаточно просто включить JQuery после прототипа, то сразу же сделать вызов jQuery.noConflict(). И в вашем коде всегда напишите

jQuery(..)/jQuery.[functionname](...) вместо обычного $ нотации.

Таким образом, вы можете оставить весь существующий источник javascript dokuwiki и всех существующих плагинов нетронутым. И вы можете использовать jQuery в своем коде.

Или, если вы все еще хотите короткую ручку вместо того, чтобы писать JQuery вы можете создать псевдоним для JQuery

<script ... include prototype ..</script> 
<script ... include jquery ..</script> 
<script ...> 
    var jQ = jQuery.noConflict(); 
    //do something with prototype 
    $("findme"); 
    jQ("div hideme").hide(); 
</script> 

Для получения дополнительной информации ознакомьтесь jQuery.noConflict()

+0

Я имел тонны функций на моем JQuery и ее производство сайт, я не хочу их менять. Вы предлагаете редактировать их все или Я могу сделать это вот так? JQuery ( $ (функция() { ... мой JQuery ... }) $ (документ) .ready (функция() { ... мой doc.ready JQuery ... }) ); –

Смежные вопросы