Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   дублируется цикл (https://javascript.ru/forum/misc/78771-dubliruetsya-cikl.html)

fcsm_andrei 02.11.2019 22:29

дублируется цикл
 
Здравствуйте, подскажите пожалуйста почему после первого значения row него добавляется еще одно. те row[0] вставляется правильно, а в остальных случаях row вставляется еще в 1 row...
т.е.
получается так
<div class="keyboard">
  <div class="row"></div>
  <div class="row">
    <div class="row"></div>
  </div>
  <div class="row">
    <div class="row"></div>
  </div>
  <div class="row">
    <div class="row"></div>
  </div>
  <div class="row">
    <div class="row"></div>
  </div>
</div>



const row = [];

for(let i=0; i<5; i++) {

    row[i] = document.createElement('div');
    row[i].classList.add('row');
    keyboard.appendChild(row[i]);
}

рони 02.11.2019 22:34

fcsm_andrei,
можно сделать полноценный пример?
например:
[html run]
... минимальный код страницы с вашей проблемой
[/html]

О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting.

рони 02.11.2019 22:59

fcsm_andrei,
вы что-то не договариваите.
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  .row {
      height: 40px;
      border: 4px solid #0000CD;
      margin: 4px;
  }
  body{
     counter-reset: num 0;

  }
  .row:before{
      counter-increment: num ;
      content:  counter(num);
      line-height: 40px;
  }

  </style>

</head>

<body>
<div class="keyboard"></div>
  <script>
const keyboard = document.querySelector(".keyboard");
const row = [];
for(let i=0; i<5; i++) {
    row[i] = document.createElement('div');
    row[i].classList.add('row');
    keyboard.appendChild(row[i]);
}
  </script>
</body>
</html>

fcsm_andrei 03.11.2019 01:46

Цитата:

Сообщение от рони (Сообщение 514810)
fcsm_andrei,
вы что-то не договариваите.
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  .row {
      height: 40px;
      border: 4px solid #0000CD;
      margin: 4px;
  }
  body{
     counter-reset: num 0;

  }
  .row:before{
      counter-increment: num ;
      content:  counter(num);
      line-height: 40px;
  }

  </style>

</head>

<body>
<div class="keyboard"></div>
  <script>
const keyboard = document.querySelector(".keyboard");
const row = [];
for(let i=0; i<5; i++) {
    row[i] = document.createElement('div');
    row[i].classList.add('row');
    keyboard.appendChild(row[i]);
}
  </script>
</body>
</html>

Спасибо, разобрался... заставили перепроверить то, что написал. оказывается inserAdjesentHtml вставлял еще один row


Часовой пояс GMT +3, время: 07:26.