@historydev
Редактирую файлы с непонятными расширениями

Как вставить элемент несколько раз во все элементы с заданным классом?

Добрый день.Скажите пожалуйста как мне это реализовать, вот моя попытка:

let counts = []

					for(i=1; i<75; i++) {

						counts.push(`<div class='count'>${i}</div>`)

						document.querySelectorAll('.g-counter .counts').forEach(ans => {

							ans.appendChild(counts[i])

						})

					}


Thanks
  • Вопрос задан
  • 677 просмотров
Решения вопроса 1
0xD34F
@0xD34F Куратор тега JavaScript
const html = [...Array(3)].map((n, i) => `<div class="count">${++i}</div>`).join('');
document.querySelectorAll('.counts').forEach(n => n.insertAdjacentHTML('beforeend', html));

или

const counts = document.querySelectorAll('.counts');

for (let i = 0; i < counts.length; i++) {
  for (let j = 0; j < 3; j++) {
    const el = document.createElement('div');
    el.className = 'count';
    el.innerText = j + 1;
    counts[i].appendChild(el);
  }
}

или

const div = document.createElement('div');
div.classList.add('count');

const fragment = document.createDocumentFragment();
fragment.append(...Array.from({ length: 3 }, (n, i) => (
  n = div.cloneNode(),
  n.textContent = -~i,
  n
)));

for (const n of document.querySelectorAll('.counts')) {
  n.append(fragment.cloneNode(true));
}
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
zkrvndm
@zkrvndm
Архитектор решений
Вставить нужно на странице? И если да, то вставить как, в начало найденных элементов или конец?
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы