Не понимаю, в чём ошибка.При нажатии на кнопку должны удалиться все p во всех дивах
let p = document.getElementsByClassName('p');
let div = document.getElementsByClassName('div');
let deleteBtn = document.getElementById('delete');
deleteBtn.addEventListener('click', function () {
for (let i = 0; i < p.length; p++) {
div[i].removeChild(p[i]);
}
});
<button id="delete">Delete</button>
<div class="d">
LLLLOOOL
<p class="p">Hi1</p>
</div>
<div class="d">
LLLLOOOL
<p class="p">Hi2</p>
</div>
<div class="d">
LLLLOOOL
<p class="p">Hi3</p>
</div>
<div class="d">
LLLLOOOL
<p class="p">Hi4</p>
</div>
p++ - ??
let div = document.getElementsByClassName('d'); // not ...('div')
getElementsByClassName - "живая" коллекция:
for (let i = p.length - 1; i >= 0; i--) {
div[i].removeChild(p[i]);
}
А лучше:
document.getElementById('delete').addEventListener('click', function () {
let div = document.getElementsByClassName('d');
for (let i = 0; i < div.length; i++) {
div[i].removeChild(div[i].querySelector(".p"));
}
});
document.getElementById('delete').addEventListener('click', function() {
let div = document.getElementsByClassName('d');
for (let i = 0; i < div.length; i++) {
div[i].removeChild(div[i].querySelector(".p"));
}
});
<button id="delete">Delete</button>
<div class="d">
LLLLOOOL
<p class="p">Hi1</p>
</div>
<div class="d">
LLLLOOOL
<p class="p">Hi2</p>
</div>
<div class="d">
LLLLOOOL
<p class="p">Hi3</p>
</div>
<div class="d">
LLLLOOOL
<p class="p">Hi4</p>
</div>
Сборка персонального компьютера от Artline: умный выбор для современных пользователей