Здравствуйте, коллеги!
Столкнулся с такой проблемой.
При определенном медиазапросе нужно было добавить 3 элемента внутрь родителя с теми же классами. Всего должно быть 6 одинаковых элементов с одним классом. Роль элементом - кнопки для кликов.
Когда я создал один дополнительный элемент через сreateElement - все работало, я мог кликать по нему, интерактив был.
НО, когда через цикл for я создал сразу 3 элемента, связь прекратилась. Я не мог взаимодействовать ни с одним из вновь созданных элементов.
Вопрос:
Как взаимодействовать с псевдомассивом созданных элементов в моем случае? Работаю на нативном JS.
Вот код:
/*Суда добавляем еще 3 div*/
<div class="wrapper">
<div class="box">1</div>
<div class="box">2</div>
<div class="box">3</div>
</div>
// JS
// Первый вариант - Добавляем 1 элемент - все работает
function addDiv() {
if (mediaWidth.matches) {
newBox.classList.add('box');
box[2].after(newBox);
newBox.innerHTML= '0';
} else {
newBox.remove();
}
}
addDiv();
// Второй вариант - НЕ работает интерактив
// Добавляем 3 DIV сразу через цикл For и append родителя Wrapper
function addDiv() {
if (mediaWidth.matches) {
for (let i = 0; i < 3; i++) {
const newBox = document.createElement('div');
newBox.classList.add('box');
wrapper.append(newBox);
newBox.innerHTML = '0';
// console.log(newBox.length); выдает Undefined
}
}
}
addDiv();