Сворачивание\разворачивание таблицы

136
22 сентября 2018, 15:10

Реализовано сворачивание\разворачивание таблицы при нажатии на кнопку. Почему первая таблица работает как надо, а ее копия ниже не работает? https://jsfiddle.net/xzr72h0y/12/

let trL = $('tr').length;
let trW = +$('tr:nth-child(2)').css('height').replace(/\D/g, '');
let trFirst = +$('tr:first-child').css('height').replace(/\D/g, '');
let wrapper = $('#wrapper');
wrapper.css({
  'height': trW * 3 + trFirst + 'px'
});
let sh = $('#sh');
sh.on('click', function (e) {
  if($(this).text() === 'Show') {
    $(this).text('Hide');
    wrapper.animate({
      height: $('table').height()
    });
  } else {
    $(this).text('Show');
    wrapper.animate({
      height: trW * 3 + trFirst + 'px'
    });
  }
});
sh.css({display: 'block'});
Answer 1

id - уникальный индификатор. А Вы используете его 2 разу. Он идет к первому (либо вообще ошибка, не знаю таких тонкостей). Используйте для второго разворачивания другой id, либо перейдите на класс (но нужно будет поменять логику, т к js будет видить последний класс с таким именем)

READ ALSO
Удаление непечатаемых символов JS RegExp

Удаление непечатаемых символов JS RegExp

Всем привет! Столкнулся с интересной задачей: имеется строка, в которой могут содержаться непечатаемые символы(пробел, перевод каретки, табуляция...

127
map по id инпутов

map по id инпутов

Функция не работаетВероятнее всего, ошибка в объявлении input

150
delay на смену заголовка

delay на смену заголовка

Пожалуй, это глупый вопрос, но почему-то не получается разобратьсяЕсть такая интересная маленькая и хрупкая библиотека i miss you: https://github

169
Обращение к ползунку инпута range на js

Обращение к ползунку инпута range на js

Нужен был слайдер для выбора цветаНашёл решение и немного изменил: https://codepen

193