Следуйте инструкциям в видео ниже, чтобы узнать, как установить наш сайт как веб-приложение на главный экран вашего устройства.
Примечание: Эта функция может быть недоступна в некоторых браузерах.
Подобных решений в сети полно)))Доброго времени суток!
Как можно реализовать скрытие части текста (когда он большой) в карточке товаров (Описание) и в категориях (Описание категории)
Вот пример стороннего сайта:
Посмотреть вложение 2677
Решений действительно много и как я понял записи вносятся в 3-и места: html, css, javascriptПодобных решений в сети полно)))
Скрыть/показать часть текста, используя только Javascript (jQuery) и CSS - CodeRoad
Разверните div через CSS overflow Один из способов сделать это - написать CSS, где вы установите height на вашем div и установите overflow в hidden . После click на div , overflow может быть...coderoad.ru
.bo_des {
height: 200px;
overflow: hidden;
}
.expand {
height: auto;
overflow: visible;
}
.morebtn {
cursor: pointer;
}
$(document).ready(function() {
$(".morebtn").click(function() {
$(".bo_des").toggleClass("expand");
});
});
Для категории
CSS:.bo_des { height: 200px; overflow: hidden; }
<a class="morebtn">Показать текст</a> можно обернуть в условия при которых появляется Показать текстДля категории
В шаблоне вывода описания категории, вставьте после вывода описания <a class="morebtn">Показать текст</a>
{if Tools::strlen($category->description) > 250}<a class="morebtn">Показать текст</a>{/if}
Все это прекрастно подходит и для карточки товара, только в product.tpl нужно добавить класс bo_des в <div class="rte">{$product->description}</div>Для категории
В шаблоне вывода описания категории, вставьте после вывода описания <a class="morebtn">Показать текст</a>
Добавьте CSS
Добавьте JSCSS:.bo_des { height: 200px; overflow: hidden; } .expand { height: auto; overflow: visible; } .morebtn { cursor: pointer; }
JavaScript:$(document).ready(function() { $(".morebtn").click(function() { $(".bo_des").toggleClass("expand"); }); });
https://github.com/jedfoster/Readmore.js
https://codepen.io/mobomo/pen/VpmPEw
Неплохая штука, но судя по "детским" вопросам топикстартера, нечто запредельноея пользовался Readmore.js
Код:https://github.com/jedfoster/Readmore.js
работает очень плавно и на всех устройствах
Код:https://codepen.io/mobomo/pen/VpmPEw
Из удобств, можно поменять название кнопочки после нажатия те изначально у тебя написано: "читать далее", при клике разворачивается и надпись меняется на: "свернуть".
.bo_des {
height: 100px;
overflow: hidden;
}
.expand {
height: auto;
overflow: visible;
}
.morebtn {
color:#069;
cursor: pointer;
margin-left: 12px;
}
<!-- More info -->
<section class="page-product-box">
<h3 class="page-product-heading">{l s='More info'}</h3>
<!-- full description -->
<div class="rte">{$product->description}</div>
</section>
<!--end More info -->
<!-- More info -->
<section class="page-product-box">
<h3 class="page-product-heading">{l s='More info'}</h3>
<!-- full description -->
<div class="rte bo_des">{$product->description}</div>
{if Tools::strlen($product->description) > 550}
<a class="morebtn" href="#">
<span class="more-show" style="display: block;">{l s='Show all text'}</span>
<span class="more-hide" style="display: none;">{l s='Hide text'}</span>
</a>
{/if}
</section>
<!--end More info -->
$('.morebtn').click(function(e){
e.preventDefault();
$('.bo_des').toggleClass('expand');
if ($('.bo_des').hasClass('expand')) {
$('.more-show').css('display','none');
$('.more-hide').css('display','block');
} else {
$('.more-show').css('display','block');
$('.more-hide').css('display','none');
}
return false;
});
<div class="bo_des">{$category->description}</div>
{if Tools::strlen($category->description) > 250}
<a class="morebtn" href="#">
<span class="more-show" style="display: block;">{l s='Show all text'}</span>
<span class="more-hide" style="display: none;">{l s='Hide text'}</span>
</a>
{/if}