Показать сообщение отдельно
  #16 (permalink)  
Старый 26.07.2017, 12:56
Аспирант
Отправить личное сообщение для shoopik Посмотреть профиль Найти все сообщения от shoopik
 
Регистрация: 02.07.2017
Сообщений: 83

извините за вторжение
есть вопрос по коду
<script>
document.querySelectorAll("table").forEach(table=>{
var trs = table.querySelectorAll("tr");
var tds = table.querySelectorAll("td");
var t = trs.length;
tds.forEach((td,i) => trs[i%t].append(td));
})

а именно по вот этой строчке: tds.forEach((td,i) => trs[i%t].append(td))
мы перебираем все ТДшки и далее возвращаем в ТРшки новые ТДшки,
допустим в примере у нас
<table>
  <tr>
      <td>1</td>
      <td>2</td>
  </tr>
  <tr>
      <td>3</td>
      <td>4</td>
  </tr>
  <tr>
      <td>5</td>
      <td>6</td>
  </tr>
  <tr>
      <td>7</td>
      <td>8</td>
  </tr>
  <tr>
      <td>9</td>
      <td>10</td>
  </tr>
</table>

5 строк и 2 столбца, итого 10 элементов.
td = 10, i = 5 ?
как это происходит ?
tds((1,1) => trs[1%1].append(td)) - для первой ТДшки
tds((7,4) => trs[7%4].append(td)) - для седьмой ТДшки
tds((8,4) => trs[8%4].append(td)) - для восьмой ТДшки

Первую брать смысла нету, возьму седьмую,
tds((7,4) => trs[7%4].append(td))
trs[7%4] - остаток есть - три, и типа в третью строчку вставляется седьмая ТДшка ? что-то не сходится у меня

Для восьмой:
tds((8,4) => trs[8%4].append(td))
trs[8%4] - остатка нет ....
Ответить с цитированием