jQuery(function() {
var c = $(".content").size();
x = 5;
$('.content:lt(' + x + ')').fadeIn();
$('.show-hide').click(function(e) {
e.preventDefault();
x = (x + 5 <= c) ? x + 999 : c;
$('.content:lt(' + x + ')').slideDown(500);
$('.content:lt(' + x + ')').show();
$('.show-hide').hide();
});
});
В общем, сейчас работает так, но если на странице будет несколько (.content) как быть?
Получается сейчас так, что отображает один (.content) а все остальные скрыты вообще, но при нажатии на (.show-hide) раскрываются сразу все.
Хотелось бы сделать так, чтобы работало все по отдельности и на странице можно было размещать несколько .content
Вариант решения проблемы:
html:
<div class='closed' onclick='showCloseItem(this)'>
asd
<div class='hiddenItem'> hiddenItem 1</div>
</div>
<div class='closed' onclick='showCloseItem(this)'>
asd
<div class='hiddenItem'> hiddenItem 2</div>
</div>
<div class='closed' onclick='showCloseItem(this)'>
asd
<div class='hiddenItem'> hiddenItem 3</div>
</div>
css:
.closed .hiddenItem {
display: none;
}
.opened .hiddenItem {
display: block;
}
js:
function showCloseItem(item) {
$(item).toggleClass('closed', 'opened');
};
Как развивать веб-проекты в 2026 году: технологии, контент E-E-A-T и факторы доверия
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники