• Страница 2 из 3
  • «
  • 1
  • 2
  • 3
  • »
Модератор форума: Yuri_G  
Сообщество uCoz » Модули uCoz » Интернет-магазин » Сброс фильтров
Сброс фильтров
leonoff(on)
Сообщений: 296
Репутация: 57

Сообщение # 16 | 21:48:17
bandjuk, Slavka, должно работать
Код
<script>   
    $(document).ready(function(){      
            if(parseInt($CURRENT_PAGE$) =='1') {      
                categoryFilter('other1','') ;   
                categoryFilter('brand','') ;   
                categoryFilter('stock','') ;   
            } ;   
        });   
</script>
проверил.

Муж рассказал жене, что у него есть любовница. Причина смерти: коронавирус.
bandjuk
Сообщений: 6816
Репутация: 2398
Уровень замечаний:

Сообщение # 17 | 21:55:39
неа, не пашет, по крайней мере на двух доп полях
Сообщение отредактировал bandjuk - Четверг, 16 Апр 2015, 21:56:07
leonoff(on)
Сообщений: 296
Репутация: 57

Сообщение # 18 | 22:32:57
у меня он один и есть... Думал, если один, то и все. Надо думать. Ушел думать

Муж рассказал жене, что у него есть любовница. Причина смерти: коронавирус.
$Tiny$
Сообщений: 193
Репутация: 62

Сообщение # 19 | 11:31:00
Да уж... Там функция categoryFilter запрос отправляет через _uPostForm. А после получения ответа меняет выдачу результатов. И пока она не получит ответ на смену одного из фильтров - бесполезно менять другие фильтры. Можете сами убедиться без всяких скриптов: смените на "- Все -" сразу у двух фильтров, до того, как результат выдачи обновлен будет после первого изменения - второй измененный фильтр вернется в прежнее положение после загрузки результатов.
Можно по таймеру среагировать:
Код
<script>    
    $(document).ready(function(){       
             if(parseInt($CURRENT_PAGE$) =='1') {       
                 categoryFilter('other1','');  
                 setTimeout(function() { categoryFilter('brand',''); }, 5000);
                 setTimeout(function() { categoryFilter('stock',''); }, 10000);
             } ;    
         });    
</script>
Но это - так себе решение. Нужно каким-то образом выполнять действия после выполнения _uPostForm, зашитого в их функцию, либо отловить изменение выдачи результатов.
Slavka
Сообщений: 23
Репутация: 26

Сообщение # 20 | 11:56:20
$Tiny$, что ж, видимо придется ждать решения от разработчиков, поиск по форуму сказал, что не одного меня этот вопрос волнует) А пока - сбрасывать тот фильтр, который чаще других используют. Спасибо вам за разъяснение)
leonoff(on)
Сообщений: 296
Репутация: 57

Сообщение # 21 | 14:37:00
$Tiny$, да уж... Какая наблюдательность. Ваше решение куда лучше.

Slavka, поковырялся в коде. И вот что выяснил. Магазин устанавливает куки на сортировку и фильтры. По этому очевидное решение эту куку удалять. Но делать это надо до перезагрузки страницы. Сделал так.

Повесил на ссылки в меню обработчик. Т.е. если щелкнуть, например, по ссылке Межкомнатные двери (или входные, ну по меню короче), то сначала будет удалена нужная кука, а уже потом произойдет переход по ссылке. Вот код набросал:


Код
<script>

$(document).ready(function(){
     $('.sideblock a').on('click', function(event) {
       event.preventDefault();
       var url = $(this).attr('href');
       delete_cookie ('0dver72uShopG'); // такую куку он ставит для твоего сайта
       document.location = url;
     });
});

function delete_cookie ( cookie_name ) {
     var cookie_date = new Date ( );
     cookie_date.setTime ( cookie_date.getTime() - 1 );
     document.cookie = cookie_name += "=; expires=" + cookie_date.toGMTString();
};

</script>

Добавлено (17 Апр 2015, 14:37:00)
---------------------------------------------
Slavka, чтобы еще этот обработчик повесить на горизонтальное меню, нужно этому меню добавить какой-нибудь class. Например, <ul class="mainMenu">. Тогда в js надо будет заменить


Код
$('.sideblock a').on('click', function(event) {
на

Код
$('.sideblock a,  .mainMenu a').on('click', function(event) {

Муж рассказал жене, что у него есть любовница. Причина смерти: коронавирус.
Сообщение отредактировал leonoff(on) - Пятница, 17 Апр 2015, 14:04:37
Slavka
Сообщений: 23
Репутация: 26

Сообщение # 22 | 11:14:30
leonoff(on), спасибо большое, обязательно попробую. Подскажите, а если пользователь решит обновить страницу, кука не удалится?
leonoff(on)
Сообщений: 296
Репутация: 57

Сообщение # 23 | 17:36:16
Slavka, при обновлении нет. Но по сути это и не надо. Главное, при переходе по категориям.

Муж рассказал жене, что у него есть любовница. Причина смерти: коронавирус.
Adyan
Сообщений: 9
Репутация: 6

Сообщение # 24 | 14:56:36
Кто может помочь? нужен рабочий код для автоматического сброса фильтров (набор ссылок) все перепробовал уже, готов заплатить.
leonoff(on)
Сообщений: 296
Репутация: 57

Сообщение # 25 | 15:03:24
Adyan, я же вам написал, что нужно сделать. 100% рабочий код. Сам лично проверял

Муж рассказал жене, что у него есть любовница. Причина смерти: коронавирус.
Adyan
Сообщений: 9
Репутация: 6

Сообщение # 26 | 15:18:16
Цитата
<script>

$(document).ready(function(){
$('.sideblock a').on('click', function(event) {
event.preventDefault();
var url = $(this).attr('href');
delete_cookie ('0dver72uShopG'); // такую куку он ставит для твоего сайта
document.location = url;
});
});

function delete_cookie ( cookie_name ) {
var cookie_date = new Date ( );
cookie_date.setTime ( cookie_date.getTime() - 1 );
document.cookie = cookie_name += "=; expires=" + cookie_date.toGMTString();
};

</script>
этот код куда нужно поставить? везьде пробовал, и в верхную часть сайта, и в нижную и в каталог товаров. 0dver72uShopG этот поменял на мой.
leonoff(on)
Сообщений: 296
Репутация: 57

Сообщение # 27 | 15:26:08
Adyan, 0dver72uShopG как раз менять и не надо. Это именно ваш кук. Я брал его с вашего сайта. А вставить перед </body>

Добавлено (20 Май 2015, 15:26:08)
---------------------------------------------
Adyan, а, простите. Я вас перепутал. Тут ваш кук, конечно ставить надо. Но и обработчик надо поменять немного. Напишите свой сайт - посмотрю


Муж рассказал жене, что у него есть любовница. Причина смерти: коронавирус.
Adyan
Сообщений: 9
Репутация: 6

Сообщение # 28 | 15:39:41
Ага ниче, зачем менять то, все сайты же одинаковые кроме куков, мой сайт Santehnika.me , а нельзя ли дать куки жизнь в прошлом чтобы всегда удалилься, типо так

Цитата
Удалять Cookie нужно по тому же принципу, что и в PHP, достаточно указать время истечения в прошлом, давайте создадим функцию, так удобнее
function delete_cookie(name) { document.cookie = name + "=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/";
leonoff(on)
Сообщений: 296
Репутация: 57

Сообщение # 29 | 15:44:30
Adyan, вообще то я ответил выше, если вы посмотрите. И уважительно, без яхидств. А второе, у меня такая функция и написана, которая это время сдвигает всего на секунду. И дело тут не в функции, а в том что, этот обработчик на конкретные ссылки с классом .sideblock. У вас такие же ссылки?

Муж рассказал жене, что у него есть любовница. Причина смерти: коронавирус.
Adyan
Сообщений: 9
Репутация: 6

Сообщение # 30 | 15:53:35
незнаю у меня видимо .sidebox или .sidebar
Сообщество uCoz » Модули uCoz » Интернет-магазин » Сброс фильтров
  • Страница 2 из 3
  • «
  • 1
  • 2
  • 3
  • »
Поиск: