Kami Опубликовано 14 января, 2018 Жалоба Поделиться Опубликовано 14 января, 2018 (изменено) Друзья , хочу оптимизировать фильтр ( пример как на скрине) Интересует как сделать чтоб 4 свойства выводились а снизу была ссылка( еще варианты)а при нажатии выезжал список с остальными свойствами. Вот код примерно накидал, но как сделать чтоб остальные были под хайдом а при нажатии на ссылку раскрывались. {assign var=max_options value=4} {foreach $f->options as $k=>$o} <li> <input type="checkbox" id="{$f->id}pai_{$o@iteration}" name="{$f->id}[]" {if $filter_features.{$f->id} && in_array($o->value,$filter_features.{$f->id})}checked="checked"{/if} value="{$o->value|escape}" /> <label for="{$f->id}pai_{$o@iteration}">{$o->value|escape}</label> </li> {if $o@iteration >= $max_options || $o@last} <br> <a class="all" href="">Посмотреть все</a> {/if} {/foreach} Изменено 14 января, 2018 пользователем Kami Цитата Ссылка на сообщение Поделиться на другие сайты
MStyle28 Опубликовано 14 января, 2018 Жалоба Поделиться Опубликовано 14 января, 2018 Как вариант сделать через jsПример https://jsfiddle.net/j7ahj2f1/ Цитата Ссылка на сообщение Поделиться на другие сайты
Kami Опубликовано 14 января, 2018 Автор Жалоба Поделиться Опубликовано 14 января, 2018 Как вариант сделать через jsПример https://jsfiddle.net/j7ahj2f1/ Спасибо, вариант хороший. Я почему то через смарти хотел заморочиться. Цитата Ссылка на сообщение Поделиться на другие сайты
Kami Опубликовано 14 января, 2018 Автор Жалоба Поделиться Опубликовано 14 января, 2018 Как вариант сделать через jsПример https://jsfiddle.net/j7ahj2f1/ еще вопрос, а как сделать чтоб открывался каждый блок отдельно? Цитата Ссылка на сообщение Поделиться на другие сайты
MStyle28 Опубликовано 14 января, 2018 Жалоба Поделиться Опубликовано 14 января, 2018 еще вопрос, а как сделать чтоб открывался каждый блок отдельно? HTML <div> <ul id="list_1"> <li>Пункт 1</li> <li>Пункт 2</li> <li>Пункт 3</li> </ul> </div> <div> <ul id="list2"> <li>Пункт 1</li> <li>Пункт 2</li> <li>Пункт 3</li> </ul> </div> JS подключаем плагин Collapsorz и пишем js $(function() { $("#list_1").collapsorz({ minimum: 2 , showText: "Показать все" , hideText: "Скрыть" }); $("#list_2").collapsorz({ minimum: 2 , showText: "Показать все" , hideText: "Скрыть" }); }); Как-то так. Цитата Ссылка на сообщение Поделиться на другие сайты
Kami Опубликовано 15 января, 2018 Автор Жалоба Поделиться Опубликовано 15 января, 2018 HTML <div> <ul id="list_1"> <li>Пункт 1</li> <li>Пункт 2</li> <li>Пункт 3</li> </ul> </div> <div> <ul id="list2"> <li>Пункт 1</li> <li>Пункт 2</li> <li>Пункт 3</li> </ul> </div> JS подключаем плагин Collapsorz и пишем js $(function() { $("#list_1").collapsorz({ minimum: 2 , showText: "Показать все" , hideText: "Скрыть" }); $("#list_2").collapsorz({ minimum: 2 , showText: "Показать все" , hideText: "Скрыть" }); }); Как-то так. это я понимаю как делать. Мне не понятно как это в цикл вывода параметров свойства поставить. Цитата Ссылка на сообщение Поделиться на другие сайты
Maksclub Опубликовано 15 января, 2018 Жалоба Поделиться Опубликовано 15 января, 2018 (изменено) это я понимаю как делать. Мне не понятно как это в цикл вывода параметров свойства поставить. нужно перевести разметку с id на class, типа такого class="list__features" и js код тогда сокраится и его просто вставить в файл с js: $(function() { $(".list__features").collapsorz({ minimum: 2, showText: "Показать все", hideText: "Скрыть" }); }); Изменено 15 января, 2018 пользователем Maksclub Цитата Ссылка на сообщение Поделиться на другие сайты
Kami Опубликовано 15 января, 2018 Автор Жалоба Поделиться Опубликовано 15 января, 2018 нужно перевести разметку с id на class, типа такого class="list__features" и js код тогда сокраится и его просто вставить в файл с js: $(function() { $(".list__features").collapsorz({ minimum: 2, showText: "Показать все", hideText: "Скрыть" }); }); так если каждому параметру присвоить list__features то при открытии одного , будут открываться все . Цитата Ссылка на сообщение Поделиться на другие сайты
Maksclub Опубликовано 15 января, 2018 Жалоба Поделиться Опубликовано 15 января, 2018 (изменено) так если каждому параметру присвоить list__features то при открытии одного , будут открываться все . тогда нужно повсить на событие и $(".list__features") заменить на $(this) Изменено 15 января, 2018 пользователем Maksclub Цитата Ссылка на сообщение Поделиться на другие сайты
MStyle28 Опубликовано 15 января, 2018 Жалоба Поделиться Опубликовано 15 января, 2018 У меня с вариантом от Макса работают каждый отдельно:https://yadi.sk/d/BjH2uFaV3RTRSG Цитата Ссылка на сообщение Поделиться на другие сайты
Kami Опубликовано 15 января, 2018 Автор Жалоба Поделиться Опубликовано 15 января, 2018 У меня с вариантом от Макса работают каждый отдельно:https://yadi.sk/d/BjH2uFaV3RTRSGДа все работает , спасибо! Моя невнимательность была! Цитата Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.