newdecline
@newdecline
Front-end-developer

Как сделать если проекты расположены больше чем в два ряда, то скрыть остальные и показать кнопку смотреть ещё?

Тут код
Как сделать если проекты расположены больше чем в два ряда , то скрыть остальные и показать кнопку смотреть ещё ?
Пока что я просто хочу вывести в консоль сообщение если высота всего блока с проектами более 810, но не совсем правильно это работает.
Когда жму "все" то сообщение "lol" выводится правильно, а если нажать после этого "брендинг" то высота блоков будет 267 пикселов это явно не больше 810, но почему то все равно выводится в консоль "lol", а если ещё раз нажать "брендинг" то уже не выводится, то-есть скрипт работает после второго нажатия, а надо что бы по одному нажатию
  • Вопрос задан
  • 80 просмотров
Решения вопроса 1
AngReload
@AngReload
Кратко о себе
Добавьте строчку в ваш js
var containerEl = document.querySelector('.project__bloks');
var mixer = mixitup(containerEl);

$('.project__nav-item').on('click', function(event) {
  if ( parseFloat( $('.project__bloks').css('height') ) > 810 ) {
    console.log('lol');
  }
  console.log( $('.project__bloks').css('height') );
  setTimeout(() => console.log( $('.project__bloks').css('height') ), 2000); // <= вот эту строчку
});


И тогда увидите, что когда вы кликнули по кнопке размер один, а через две секунды уже другой. Это так из-за анимации.

Я думаю, вам нужно просто к контейнеру применить стиль типа: max-height: 600px; overflow: hidden; и при клике на кнопку убирать этот стиль. Что-то другое будет слишком сложным.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы