Поддержка Проблемы и решения проверка подключения jquery

  • Решено jurvrn

    (@jurvrn)


    по ctr+U видно что скрипт вроде как подключается
    <script type='text/javascript' src='http://jurvrn.ru/wp-includes/js/jquery/jquery.min.js?ver=3.5.1' id='jquery-core-js'></script>
    но команды Jquery не срабатывают. Версия скрипта слишком урезанная?

    Страница, с которой нужна помощь: [войдите, чтобы увидеть ссылку]

Просмотр 14 ответов — с 1 по 14 (всего 14)
  • Модератор Юрий

    (@yube)

    Версия скрипта слишком урезанная?

    Нет, конечно. Скорее noConflict mode не учитываете.

    https://developer.wordpress.org/reference/functions/wp_enqueue_script/#comment-1473

    Юрий (@yube), причем по такому букмарклету версия jquery выводится
    javascript:(function(){var%20msg;if%20(window.jQuery)%20{msg%20=%20'You%20are%20running%20jQuery%20version:%20'%20+%20jQuery.fn.jquery;}%20else%20{msg%20=%20'jQuery%20is%20not%20installed';}alert(msg);})();;

    Модератор Юрий

    (@yube)

    причем по такому букмарклету версия jquery выводится

    И каким это боком к тому, что я написал?

    Не надо пингать ник без особой на то нужды. Это раздражает.

    понял.
    вставил в head
    <script>var $ = jQuery.noConflict();</script>
    не помогло
    UPD 1. проверил по этому методу и сработало https://www.w3schools.com/jquery/jquery_noconflict.asp
    но там идет подгрузка jquey с сайта google, и если её убрать — опять не работает.
    UPD 2. убрал $.noConflict();, поместил в виджет

    jQuery(document).ready(function(){
      jQuery("button").click(function(){
        jQuery("p").text("jQuery is still working!");
      });
    });

    — этот код работает, другие — нет…

    Модератор Юрий

    (@yube)

    По ссылке, что я дал, написано:

    jQuery( document ).ready( function( $ ) {
        // $() will work as an alias for jQuery() inside of this function
        [ your code goes here ]
    } );
    

    То есть вот этот вот

    <script>
        $('.modalWindow-ev').modal('show');
    </script>
    

    нужно писать в виде

    <script>
     jQuery(document).ready(function($) {
        $('.modalWindow-ev').modal('show');
     });
    </script>
    

    Причем обертка jQuery(document).ready нужна в любом случае, потому что операции на элементами DOM до его полной готовности чреваты неприятными сюрпризами.

    смысл понял, спасибо!

    Юрий (@yube) прошу прощения за пинг, просто тему закрыл…
    подскажите по синтаксису — знак $ нужен внутри скобок function() в строке jQuery(document).ready(function() {

    jQuery(document).ready(function() {
      $("a.myLinkModal").click(....
    Модератор Юрий

    (@yube)

    знак $ нужен внутри скобок function()

    $ в function($) позволяет в тельце функции (то есть внутри { }) использовать $ вместо jQuery.

    Поставил только один раз в самом начале $ и вроде работает, в последующем случае не указывал, хотя и используется сокращенный вариант

    jQuery(document).ready(function($) {
      $("a.myLinkModal").click( function(event){
        event.preventDefault();
        $("#myOverlay").fadeIn(297,	function(){
          $("#myModal")
          .css("display", "block")
          .animate({opacity: 1}, 198);
        });
    });
    });

    upd. Если ставлю во вторых скобках $, то код не срабатывает. Значит не нужны.

    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    Поставил только один раз в самом начале $ и вроде работает

    Всё верно, только там и нужно.

    Модератор Юрий

    (@yube)

    OMG! Ну элементарно же.
    Нужно в этой строке
    jQuery(document).ready(function($) {
    И только для того, чтобы в уже готовых скриптах не менять все $ на jQuery.
    В остальных местах зависит от смысла того, что там написано.
    А если тыкать доллар куда попало, то что попало и получится.

    OMG! Ну элементарно же.

    это и понял , попробовав.

    Юрий (@yube), Sergey Biryukov (@sergeybiryukov), прошу прощения за пинг, но нужно ваше экспертное мнение (создавал тему, но никто не откликнулся). Нужен для начала просто совет в какую сторону копать и начальный код, который я буду дорабатывать.

    Есть плагин который работает через шорткод. В основе там форма для внесения данных (календарь событий). На странице работает хорошо. После выполнения ввода данных происходит перезагрузка станицы и там же есть сообщение об успехе или не успехе.
    Если поместить шорткод в модальное окно после выполнения ввода формы оно конечно закрывается, так как текущая страница перезагружается. И при открытии этой формы там отображаются сообщения об успехе/ошибке.

    По идее надо чтобы модальное окно не закрывалось, но как его совместить с имеющимся плагином??
    Понимаю что надо смотреть в сторону javascript или плагин менять…

    Модератор Юрий

    (@yube)

    создавал тему, но никто не откликнулся

    Почему мне никто не отвечает?

    Если по jQuery вопрос решен, то тема закрывается.

Просмотр 14 ответов — с 1 по 14 (всего 14)
  • Тема «проверка подключения jquery» закрыта для новых ответов.