@ayapergenov

Почему не отрабатывает display none для класса grid при использовании cookie?

На странице каталога работает сортировка по количеству товаров и цене.
При переключении в вид списка происходит запись класса в cookie javascript.
Когда же кликаю по сортировке по цене или количеству, то происходит возврат в вид блоками. Причем на странице появляется сразу оба вида отображения. Хотя в конце кода стоит условие скрывать вид блоками
$('#thumbnails.grid').сss('display','none');
//Может есть еще какой код, который перебрасывает на вид .grid при запуске сортировки?

//Почему кнопка переключения вида возвращается в исходное состояние?
//Похоже на возврат в положение grid, но где оно происходит?
 //При клике по кнопкам переключения срабатывает код.

     // List & Grid View
        $('#list').click(function()
        {   $(this).addClass ('btn-orange').children('i').addClass('icon-white')
            $('.grid').fadeOut()
            $('.list').fadeIn()
            $('#grid').removeClass ('btn-orange').children('i').removeClass('icon-white')
        });
        $('#grid').click(function()
        {   $(this).addClass ('btn-orange').children('i').addClass('icon-white')
            $('.list').fadeOut()
            $('.grid').fadeIn()
            $('#list').removeClass ('btn-orange').children('i').removeClass('icon-white')
        });

    //В этот момент отрабатывает функция которая запоминает текущий вид в куку.

    function change_tpl(tpl){
     //подгружаем шаблон tpl

     //и запоминаем печеньки
     $.cookie('short_template', tpl,{path:'/'});
    };

    $(document).on('click',".pull-right button", function(){
     change_tpl($(this).attr('id'));
    //или
    // change_tpl($(this).data('template'));
     return false;
    });
    //Ну и сами печеньки
    $(function(){
        if($.cookie('short_template')) change_tpl($.cookie('short_template'));
    });

    //С помощью данного условия должно происходить сохранение вида когда происходит сортировка на странице

    if($.cookie('short_template') == 'list') {
      $('#thumbnails.list').сss('display','block');
      $('#thumbnails.grid').сss('display','none');
    }
   else
    {
      $('#thumbnails.grid').сss('display','none');
      $('#thumbnails.list').сss('display','block');
    }
  • Вопрос задан
  • 198 просмотров
Пригласить эксперта
Ваш ответ на вопрос

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

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