Задать вопрос
@Palladi_N
dev

Как вставить блок после каждого N элемента на странице, загрузка контента AJAX?

Весь контент на странице загружается AJAXом, нужно по мере прокрутки после каждого 5го изображения вставлять свой блок.
Пытаюсь юзать 'DOMNodeInserted' но не могу ни как побороть эту бесконечность, класс добавляется отлично но не блок((
jQuery('#ajax-load-more').on( 'DOMNodeInserted', function() {
	var img = 1;
	jQuery('#ajax-load-more .wp-block-image').each(function(){
		if(img == 5) {
			jQuery(this).addClass('fiveIMG');
			//jQuery(this).after('<div>fiveIMG</div>');
			img = 0;
		}
		img++;
	});
});
  • Вопрос задан
  • 100 просмотров
Подписаться 1 Простой 1 комментарий
Помогут разобраться в теме Все курсы
  • Skillbox
    JavaScript
    3 месяца
    Далее
  • Яндекс Практикум
    Фронтенд-разработчик расширенный
    13 месяцев
    Далее
  • Академия Eduson
    Fullstack-разработчик на JavaScript
    11 месяцев
    Далее
Решения вопроса 1
@Palladi_N Автор вопроса
dev
Пока обошелся таким решением, но может у кого то есть более краткий путь(хотелось бы знать на будущее)

jQuery('#ajax-load-more').on( 'DOMNodeInserted', function() {
	var img = 1;
	jQuery('#ajax-load-more .wp-block-image').each(function(){
		if(img == 5) {
			jQuery(this).addClass('fiveIMG');
			img = 0;
		}
		img++;
	});
});

jQuery(document).scroll(function() {	
	jQuery('.fiveIMG').each(function() {
		if(jQuery(this).hasClass('add')) {

		} else {
			jQuery(this).addClass('add');
			jQuery(this).after('<div>test</div>');
		}
	});
});
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы