Повторный запуск сценария Jquery после вызова Ajax - PullRequest
0 голосов
/ 16 апреля 2019

Я использую короткий Jquery-скрипт, чтобы скрыть div-элемент при загрузке страницы, который появляется при определенных условиях. Когда пользователь прокручивает страницу вниз, новое содержимое загружается с помощью Ajax, содержащего тот же элемент div, который я хочу скрыть. Как я могу запустить этот Jquery снова после загрузки указанного div-элемента?

<head>

<script type="text/javascript">
    (function($) {
           $(window).load(function() {
            $( ".the_button" ).hide();
            if (...certain condition is met...) { 
                $( ".the_button" ).show();
            }
           });
    })(jQuery);
</script>

</head>

<body>

<div class="the_button"><button>Share</button></div>

<p>Ajax-loaded button:</p>

<div class="the_button"><button>Share</button></div>

</body>

Кнопка отображается при последующих загрузках Ajax, но я хочу, чтобы она была скрыта, как и первая.

1 Ответ

1 голос
/ 16 апреля 2019

Вы можете поместить оба скрипта в файл "filename.js" и включить их в свой HTML с тегом скрипта.

Затем просто поместите весь скрипт внутри функции, как эта

$(window).load(function () {
    function functionName(){
    $(".the_button").hide()
    if (...certain condition is met...) {
      $(".the_button").show()
    }
    functionName()
      (...calling it right after load...)
    $.ajax({
        (...ajax things goes here...)
      })
      .done(function(){
        functionName()
          (...call your function again here...)
      })
    }
  })

Эта вещь может помочь вам справиться с AJAX.http://api.jquery.com/jquery.ajax/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...