Перейти к содержанию
Официальный форум поддержки Simpla

Рекомендуемые сообщения

Доброго дня, подскажите кто знает по готовому решению "AJAX фильтрация, пагинация", тема к сожалению закрыта, потому не могу задать вопрос там.

В общем почему-то AJAX вешает базу, если сделать сортировку  по цене, без AJAX все отлично. В базе около 60 000 наименований

Ссылка на сообщение
Поделиться на другие сайты

На стандартном шаблоне также вешает?

Доработки были?

 

Доработки конечно были, но на стандартном шаблоне тоже самое.

Поэкспериментировав, понял, что проявляется только в категориях с большим кол-вом товара.

В общей сложности в базе более 60,000 товаров, думаю причина в том, что запрос сортировки по цене "слишком тяжелый", никто не оптимизировал случайно? Правда странность в том, что при отключении AJAX, страница относительно быстро генерится и проблем не возникает.

 

Как это вообще отдебажить?

Ссылка на сообщение
Поделиться на другие сайты

Неужели только я столкнулся с этой проблемой? Интересно еще то, что если AJAX отключать, то нормально сортируется, но как это может быть связано? Запрос же в базу от этого не меняется.

 

Подскажите куда копать хотя бы пжл

 

 

И еще вопрос по теме AJAX фильтрации\пагинации, весь JS код выглядит вот так:

 

$("#brands a, #features a, #pagination ul li span a, .aside-nav ul li a, .aside-nav li>a, .info-product a, .brands-list li a, a.item_link, table#compare a, .bs_del a, a.ready_compare").live('click', function(){

        var state = {
            title: $(this).attr("title"),
            url: $(this).attr("href")
        }
        history.pushState( state, state.title, state.url );

        // при нажатии back/forward в браузере
        window.onpopstate = function(e){
            get_pagination(this);
            return false;
        }

        get_pagination(this);
        return false;

    });

function get_pagination(href){
	var get_link = $(href).attr('href');
	$('.content').css('opacity', 0.5);
	$.get(get_link, function(data){
		var scroll = $('.content').html(data).css('opacity', 1).offset().top;
		$('html, body').stop().animate({scrollLeft: 0, scrollTop:(scroll-200)}, 500);
	})
	.fail(function() {
		location = get_link;
	});
}

 

 

Проблема в следующем, после подгрузки, страница скролится на самый верх, а я бы хотел чтобы скроллилось до шапки, до верхнего края блока <div class="content">

 

Я большую часть жизни занимался исключительно backend-ом, в JS есть пробелы, я так понимаю за скролл отвечает следующий участок кода:

 

$.get(get_link, function(data){
		var scroll = $('.content').html(data).css('opacity', 1).offset().top;
		$('html, body').stop().animate({scrollLeft: 0, scrollTop:(scroll-200)}, 500);
	})

 

Что нужно изменить чтобы скроллилость не на самый верх страница, а до верхнего края нужного дива ?

Ссылка на сообщение
Поделиться на другие сайты

Неужели только я столкнулся с этой проблемой?

 

Видимо, так, раз другие интереса не выказывают.

 

Интересно еще то, что если AJAX отключать, то нормально сортируется, но как это может быть связано? Запрос же в базу от этого не меняется.

 

Очень даже может быть связано.

Меняется запрос или нет - зависит от того, как реализовано. Может статься, еще как меняется.

 

Подскажите куда копать хотя бы пжл

 

Прежде всего отслеживать запросы точно и полностью - тексты запросов, замер времени работы и прочее. И заодно все прочее проверять в плане быстродействия.

Ссылка на сообщение
Поделиться на другие сайты
ЯкЦинДрак

Спасибо конечно, но это больше похоже на ответ ради ответа, без даже попытки вникнуть в суть проблемы т.к. абсолютно ничего полезного я для себя не выявил, а о том что нужно делать замеры, известно любому разработчику. Повторюсь, запрос не меняется, но тем не менее при включенном AJAXе базу вешает, при выключенном - все ок. 

Ссылка на сообщение
Поделиться на другие сайты

Да это же очередной акк Корса :)

Он никогда ничего толкового бесплатно не скажет...

Одни понты)

А как же Kors2? Бедный корс :D
Ссылка на сообщение
Поделиться на другие сайты

ЯкЦинДрак

Спасибо конечно, но это больше похоже на ответ ради ответа, без даже попытки вникнуть в суть проблемы т.к. абсолютно ничего полезного я для себя не выявил, а о том что нужно делать замеры, известно любому разработчику.

 

А как можно предпринять попытку вникнуть, если Вы не сообщаете практически НИЧЕГО о проблеме, кроме ее существования?

Вам известно, что нужно делать замеры. Вы их делали? Если да, собщайте  о результатах.

Если б Вы хоть URL дали, то хоть какой-то проблеск был бы. 

А пока что почини мне то, не скажу что...

ЯкЦинДрак

Повторюсь, запрос не меняется, но тем не менее при включенном AJAXе базу вешает, при выключенном - все ок.

Какой запрос, при каких действиях, где? Хоть капельку чего-то сообщить бы конкретно... Изменено пользователем ЯкЦинДрак
Ссылка на сообщение
Поделиться на другие сайты

ЯкЦинДрак, Т.е. описание проблемы, ссылка на "модуль", сценарий использования и исходный код это ничего? МАРИХУАНА СУШИТ МОЗГИ - ОПОМНИСЬ! :D

Изменено пользователем Just074
Ссылка на сообщение
Поделиться на другие сайты

ЯкЦинДрак, Т.е. описание проблемы, ссылка на бесплатное решени, сценарий использования и исходный код это ничего? МАРИХУАНА СУШИТ МОЗГИ - ОПОМНИСЬ! :D

Смотря какое описание и какой исходный код...

 

Вы можете дать ссылку, на которой можно увидеть живьем, как "AJAX вешает базу"?

Ссылка на сообщение
Поделиться на другие сайты

ЯкЦинДрак, в закрытой интранет сети разрабатываю, ссылки нет к сожалению, ссылка на само решение в первом сообщении, исходный JS код, привел выше

 

Дублирую еще раз - http://forum.simplacms.ru/topic/8142-ajax-%D1%84%D0%B8%D0%BB%D1%8C%D1%82%D1%80%D0%B0%D1%86%D0%B8%D1%8F-%D0%BF%D0%B0%D0%B3%D0%B8%D0%BD%D0%B0%D1%86%D0%B8%D1%8F/

Ссылка на сообщение
Поделиться на другие сайты

Судя по всему, Вы хотите сказать, что по ссылке находится описание разработки, которую Вы применяете, и в результате "AJAX вешает базу".

 

В текущей постановке чем Вам помочь? Если я установлю себе ту разработку и увижу точно такую же проблему, как у Вас, то тогда можно найти причину и подсказать Вам. Но с вероятностью 99,99%  при новой установке будет работать нормально.

В чем может быть причина? Может, Вы неверно установили что-то. Может, причина во взаимодействии с другими доработками.  А может, причина в структуре или размере Вашей базы. Гадать можно долго и безрезультатно.

 

Если Вы несколько дней не можете разобраться, вероятнее всего, вопрос более серьезен, чем Вы думаете, и надо к нему подходить соответственно. ИМХО, реальный путь для Вас - во-первых, установить копию сайта на хостинге, к которому сможете дать доступ, во-вторых, найти (материально заинтересовать) специалиста, который возьмется найти и устранить причину...

Ссылка на сообщение
Поделиться на другие сайты

Посыпаю голову пеплом, простите коллеги, что ввел в заблуждение -  AJAX тут не причем! Простите, не знаю как я тестировал, что решил что проблема из-за AJAX, наверное не обратил внимание при переключении категорий на кол-во таваров в них.

 

 

В общем, тормоза не связаны с AJAX, тормозит и без него, в категории  около 10,000 товаров и сортировка по цене вешает базу. 



Вопрос про скролл остается актуальным :) Подскажите пжл, как скроллить страницу не в самый верх, а к нужному диву? 

 

$.get(get_link, function(data){
		var scroll = $('.content').html(data).css('opacity', 1).offset().top;
		$('html, body').stop().animate({scrollLeft: 0, scrollTop:(scroll-200)}, 500);
	})
Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...