Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Не подгружает товары


Recommended Posts

Всем привет. Поставил модуль Ajax загрузки товаров https://opencartforum.com/files/file/3131-ajax-zagruzka-tovarov-na-stranicu-kategorii/

На сайте в категории https://sushi.blacksea.media/rolly/
 

Код:


var pagination_exist = true; // оставить пагинацию и добавить кнопку
var button_more = true; // наличие кнопки "загрузить ещё"
var top_offset = 100; // высота отступа от верха окна, запускающего arrow_top
var window_height = 0; // высота окна
var product_block_offset = 0; // отступ от верха окна блока, содержащего контейнеры

var product_block = ''; // определяет div, содержащий товары
var pages_count = 0; // счетчик массива ссылок пагинации
var pages = []; // массив для ссылок пагинации
var waiting = false;

function getNextProductPage(pages, pages_count) {
	if (waiting) return;
    if (pages_count >= pages.length) return;
	waiting = true;
	//$(product_block).parent().after('<div id="ajax_loader"><img src="/image/ajax-loader-horizontal.gif" /></div>');
	$.ajax({
		url:pages[pages_count], 
		type:"GET", 
		data:'',
		success:function (data) {
			$data = $(data);
			$('#ajax_loader').remove();
			if ($data) {         
				$(product_block).parent().append($data.find('.product-layout').parent().html());
				if (pagination_exist) {
					$('.pagination').html($data.find('.pagination'));
				}
			}
			waiting = false;
		}, 
		complete:function (data) { 
			$('.lazy').Lazy();
		}
	});
	if (pages_count+1 >= pages.length) {$('.load_more').hide();};
}

function getProductBlock() {
    product_block = '.product-layout';
    return product_block;
}

$(document).ready(function(){ 
    window_height = $(window).height();
    product_block = getProductBlock();
	var button_more_block = $('#load_more').html(); //
    if ($(product_block).length > 0) {
        product_block_offset = $(product_block).offset().top;
		var href = $('.pagination').find('li:last a').attr('href');
        $('.pagination').each(function(){
			if (href) {
				TotalPages = href.substring(href.indexOf("page=")+5);
				First_index = $(this).find('li.active span').html();
				i = parseInt(First_index) + 1;
				while (i <= TotalPages) {
					pages.push(href.substring(0,href.indexOf("page=")+5) + i);
					i++;
				}
			}		
        });	
		
		if (button_more && href) {
			$('.pagination').parent().parent().before(button_more_block);
			if (!pagination_exist) {
				$('.pagination').parent().parent().remove();
			} else {
				$('.pagination').parent().parent().find('.col-sm-6.text-right').remove();
			}
			$('.load_more').click( function(event) {
				event.preventDefault();
				getNextProductPage(pages, pages_count);
				pages_count++;
			});
		} else if (href) { 
			$('.pagination').parent().parent().hide();
			$(window).scroll(function(){
				product_block = getProductBlock();
				product_block_height = $(product_block).parent().height();
				if (pages.length > 0) {
					if((product_block_offset+product_block_height-window_height)<($(this).scrollTop())){
						getNextProductPage(pages, pages_count);
						pages_count++;
					}
				}
			});
		}
    }
	
});

Проблема в том, что не работает подзагрузка при прокрутке страницы. Только при нажатии на кнопку. Подскажите пожалуйста, где допущена ошибка. Буду благодарен

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.