Конфликт библиотеки jQuery со встроенным скриптом

#javascript #jquery

#javascript #jquery

Вопрос:

На моем веб-сайте WordPress есть javascript, для корректной работы которого также требуется библиотека jquery. Но на сайте уже есть библиотека, которая не работает для этого кода. Если я добавил библиотеку в нижний колонтитул с помощью javascript, то код будет работать нормально, но это приведет к некоторому конфликту с другой библиотекой. Есть ли какой-либо способ использовать две библиотеки на одной странице без какого-либо конфликта?

Комментарии:

1. Вы ссылаетесь на Jquery как на библиотеку здесь или на две разные версии плагина, использующего jQuery?

Ответ №1:

Вы можете использовать jQuery.noConflict() опцию для одновременного использования нескольких версий jQuery, но вам все равно придется проверить, работает ли плагин, который вы хотите использовать, когда он вызывается с другой версией jQuery.

Предполагая, что вы загружаете две версии через noConflict следующим образом:

 <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script>
   var $v3 = jQuery.noConflict();
</script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
  

Затем вы сможете использовать «1.9» с переменной jQuery с глобальной областью $ действия и более новую версию $v3 . Это может выглядеть следующим образом:

 var $body = $('body'); // default option

$v3("input-date").datepicker(); // use jQuery v3 to initialize the plugin