Плагин Maphilight не работает в WordPress из-за конфликта jQuery

#jquery #wordpress

#jquery #wordpress

Вопрос:

Я использую плагин maphilight на карте США, чтобы при наведении курсора мыши штаты меняли цвета.

(http://plugins .jquery.com/project/maphilight

с демонстрацией:

http://davidlynch.org/js/maphilight/docs/demo_usa.html )

У меня было следующее в моем header.php (Я использую WordPress):

 <script language="javascript" type="text/javascript" src="<?php bloginfo('url'); ?>/wp-content/themes/adventure-journal-child/js/jquery-1.2.3.pack.js"></script>
<script language="javascript" type="text/javascript" src="<?php bloginfo('url'); ?>/wp-content/themes/adventure-journal-child/js/jquery.metadata.min.js"></script>
<script language="javascript" type="text/javascript" src="<?php bloginfo('url'); ?>/wp-content/themes/adventure-journal-child/js/jquery.maphilight.js"></script>
  

Он отлично работал, пока я не установил стили с короткими кодами (SWS), http://plugins.righthere.com/styles-with-shortcodes /, чтобы иметь возможность добавлять вкладки и всплывающие подсказки, которые также используют jQuery.

Эти два вызывали конфликт. Итак, как только код jQuery, связанный с maphilights, был удален, мои вкладки и всплывающие подсказки работают. Я читал об этом и понимаю, что загрузка кода в заголовок в любом случае не идеальна. Мой вопрос: как я могу заставить maphilight работать, не вызывая конфликта?

Я пытался:

  <script type="text/javascript">
    jQuery.noConflict();
    jQuery(function() {
        jQuery('.map').maphilight({fade: false}); /*set true for fading hover effect*/
           });
</script>   
  

Может ли плагин maphilight использовать тот же jQuery, что и мои стили с короткими кодами? Итак, как мне это сделать?

Я думаю, мне нужно использовать wp_enqueue_script в functions.php , но я не уверен, как это сделать.

Моя конечная цель — иметь возможность переключать состояние на карте, и оно подсвечивается, а всплывающая подсказка содержит текст и ссылки внутри. Большое спасибо!

Ответ №1:

Это довольно сложно устранить, поскольку это платные плагины, и мы не видим конфликта в вашей ссылке, но одна вещь, которую вы могли бы попробовать, это обновить свой jquery, вы в настоящее время находитесь на 1.4.2, а они на 1.5.2

http://code.jquery.com/jquery-1.5.2.min.js

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

1. Спасибо за ответ. Я попробую это. Я ввожу строку: <script language=»javascript» type=»text / javascript» src=»<?php bloginfo(‘url’); ?>/wp-content/themes/adventure-journal-child/js/jquery-1.2.3.pack.js «></script> вернулся, и мои основные моменты снова включились, и теперь мои вкладки отключены. Вот страница, с которой я играю: militarywom.com/find-an-installation

Ответ №2:

Вместо этого вам было бы лучше использовать функцию wp_enqueue_script. Я столкнулся с подобными проблемами на паре сайтов WordPress, пока не узнал об этой функции.