Изменить код JS в фильтре ОК

Статус
В этой теме нельзя размещать новые ответы.

zek24

Мой дом здесь!
Команда форума
Модератор
Регистрация
14 Ноя 2009
Сообщения
811
Реакции
310
  • Автор темы
  • Модер.
  • #1
Привет, коллеги
Есть модуль Для просмотра ссылки Войди или Зарегистрируйся
Вопрос, как в его горизонтальной версии (та что справа вверху) сделать по его умолчанию закрытым.
А при нажатии на стрелочку в шапке фильтра чтобы он открывался.
"Код" стрелки
HTML:
<a class="bf-toggle-filter-arrow"></a>
Сам блок с фильтром
HTML:
<div class="brainyfilter-panel box-content <?php if ($settings['submission']['hide_panel']) : ?>bf-hide-panel<?php endif; ?>">
            <form class="bf-form
...
</div>
JS код отвечающий за свертывание
Код:
// slide up/down all the horizontal filter layout
            $('.bf-toggle-filter-arrow').on('click', function() {
                var $cont = $(this).closest('.box').find('.brainyfilter-panel');
                if ($cont.is(':visible')) {
                    $cont.stop().slideUp(600);
                    $(this).addClass('bf-down');
                } else {
                    $cont.stop().slideDown(600);
                    $(this).removeClass('bf-down');
                }
            });

В настройках не нашел. Метод тыка не помог.
 
Так пойдёт?

HTML:
$( document ).ready(function() {
    $('.bf-toggle-filter-arrow').trigger('click');
});
 
Ну например можно в конце файла вктором содержится этот код...

$('.bf-toggle-filter-arrow').on('click', function() { var $cont = $(this).closest('.box').find('.brainyfilter-panel'); if ($cont.is(':visible')) { $cont.stop().slideUp(600); $(this).addClass('bf-down'); } else { $cont.stop().slideDown(600); $(this).removeClass('bf-down'); } });

Вот как-то так будет
HTML:
// slide up/down all the horizontal filter layout
            $('.bf-toggle-filter-arrow').on('click', function() {
                var $cont = $(this).closest('.box').find('.brainyfilter-panel');
                if ($cont.is(':visible')) {
                    $cont.stop().slideUp(600);
                    $(this).addClass('bf-down');
                } else {
                    $cont.stop().slideDown(600);
                    $(this).removeClass('bf-down');
                }
            });

$( document ).ready(function() {
    $('.bf-toggle-filter-arrow').trigger('click');
});


А есть ещё более извращённый вариант через CSS:-]

Исходя из этой строчки
HTML:
var $cont = $(this).closest('.box').find('.brainyfilter-panel');
прячется класс .brainyfilter-panel, ему можно прописать стиль style="display: none;", но стрелочка будет нарисованна верх, а нам тогда надо вниз, для этого требуется к классу тега стрелки .bf-toggle-filter-arrow добавить класс .bf-down будет так <a class="bf-toggle-filter-arrow bf-down"></a>
 
Последнее редактирование:
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху