Прежде всего вам нужно закрыть свой первый список с помощью / ul .
поместите класс перемещения в элемент li , содержащий ваши задачи
<li class="move list-group-item d-flex justify-content-between align-items-center">
тогда этот скрипт должен обрабатывать все.
<script>
window.onload = function() {
document.getElementById('movebutton').addEventListener('click', function() {
const list = document.querySelector('.todos').getElementsByTagName('li');
const pack = document.querySelector('.pack');
for(var x=0; x<list.length; x++) {
if(list[x].classList.contains('move')) {
pack.appendChild(list[x]);
x--;
}
}
});
}
</script>
appendChild автоматически удаляет из исходного списка, поэтому вам нужно x - , чтобы исправить точку, на которую указывает следующий цикл.
и кнопка, которая прикрепляется к слушателю события.
<button id="move">move</button>
Edit:
Извините, я пропустил ту часть, где вы хотели переместить их по отдельности. Следующее исправляет это, а также гарантирует, что ваши элементы списка сохраняют свой класс и стили и т. Д. Нажмите на текст перемещения, чтобы переместить их.
Кроме того, только что добавлен возврат к исходной функции списка.
window.onload = function() {
const list = document.querySelector('.todos');
const pack = document.querySelector('.pack');
list.addEventListener('click', function(e) {
if(e.target.classList.contains('move')) {
e.target.innerText = " - return";
li = e.target.parentElement;
pack.appendChild(li);
}
});
pack.addEventListener('click', function(e) {
if(e.target.classList.contains('move')) {
e.target.innerText = " - move";
li = e.target.parentElement;
list.appendChild(li);
}
});
}
//FIRST LIST
<ul id="first" class="list-group todos mx-auto text-light">
<li class="list-group-item d-flex justify-content-between align-items-center">
<span style="font-weight:bold">play mariokart</span>
<i class="far fa-trash-alt move"> - move</i>
</li>
<li class="list-group-item move d-flex justify-content-between align-items-center">
<span>defeat ganon in zelda</span>
<i class="far fa-trash-alt move"> - move</i>
</li>
</ul>
//SECOND LIST
<h1>Items in the Pack</h1>
<ul id="second" class ="pack">
<li> </li>
<li> </li>
<li> </li>
</ul>