В настоящее время я работаю над проектом, в котором наш клиент хочет Галерею. Эту галерею можно фильтровать с помощью кнопок над галереей. Хотя я считаю, что нашел и реализовал необходимую логику для работы с URL-параметрами и ключевыми словами в источнике изображения (через различные тесты), моя текущая проблема заключается в том, что скрипт работает до, динамический контент (изображения) имеет загружается, а это значит, что на самом деле ничего не происходит.
Я пробовал использовать jQuery(document).on("ready", function() {});, jQuery(".gallery img").on("load", function() {}); и jQuery(".gallery img").load(function() {});, но безрезультатно.
Если это еще не очевидно, к контейнеру можно получить доступ через .галерея, а изображения — ну, изображение.
Я уже был в различных чатах StackOverflow, где мне предлагали переместить скрипт туда, куда загружается динамический контент, но, увы, я не знаю, где находится этот файл.
Правильно .... использование on('ready' недействительно и не было в течение длительного времени. Кроме того... ключевой вопрос заключается в том, загружается ли этот "динамический контент" асинхронно?
Используйте $(window).on('load',function(){ ... }), который не должен срабатывать, пока не загрузятся все изображения. Если изображения не вставляются с помощью JS после загрузки страницы. В этом случае вам необходимо обратиться к документации плагина. у них, вероятно, есть загруженный обработчик событий
@andrew ... при условии, что асинхронный контент не загружается ... но согласитесь, если все это находится в исходном коде сервера
@RokoC.Buljan Кажется, я смешал это с jQuery(document).ready(), плохо!
@charlietfl Достаточно честно, сложно сказать, но я предполагаю, что где-то он загружается асинхронно через AJAX.
@andrew Постараюсь! Не знаю, почему я раньше не подумал о документации плагинов, спасибо!
вы можете проверить, обратившись к вкладке сети в консоли разработчика вашего браузера. нажмите f12 и посмотрите на вкладку network->xhr. если вы видите там данные, они загружаются с помощью ajax после загрузки страницы
Если он загружается плагином с использованием jQuery ajax, существуют глобальные методы ajax, которые вы, вероятно, можете использовать, например $.ajaxComplete. Нужно много более конкретных деталей, чтобы разобраться с этим
@andrew Хороший вопрос. Казалось бы, он действительно загружается через AJAX.
Вам следует просто удалить этот вопрос, так как он решен с использованием информации, не содержащейся в самом вопросе, и, следовательно, не имеет долгосрочной ценности для других.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Если галерея заполняется с помощью запросов Ajax, вы можете использовать обработчик событий jQuery .ajaxStop(). Когда Ajax-запрос выполнен, jQuery проверяет, остались ли какие-либо оставшиеся запросы. Если их нет, то запускается событие ajaxStop.
Простой обработчик ajaxStop:
$(document).ajaxStop(function() {
console.info('All Ajax requests completed.')
});
Где вы нашли этот
jQuery(document).on("ready", function() {});? Можете дать ссылку?