Сап ночной, есть одна функция. В общем создаю список с кнопкой, чтобы каждая созданная кнопка удаляла себя и тот элемент списка, с которым она родилась.
Прописываю то, что видите на пиках и работает только первый созданный элемент, остальные не работают. КАк это исправить. Мне подсказали, что надо передать ноль, чтобы функция не крашилась, но я хз как это сделать, поясните, плз новичку, нихуя не понимаю.
меня напрягает то, что, даже если бы оно работало, как ты хочешь, оно бы при любом нажатии любой кнопки удаляло только первый в списке элемент. Ты этого хочешь или чтобы оно удаляло именно тот, на который ты кликнул?
Бля... Начнем с того, что обработчик ты прописываешь только для первой кнопки. document.querySelectorAll('.button2').forEach(button => {/тут твой обработчик button.onclick, обращайся к ней через button, нахуй тебе селекторы. Для простоты можешь засовывать кнопки в ли и удалить парента/})
>>258552822 Анон, зачем ты все в одну функцию запихал? Надо отдельно создать функцию создания списка с кнопкой и отдельную, которая удаляет элемент при нажатии на кнопку через eventListener
>>258553345 Хмм, а можно сдлелать, чтобы он удалял себя и сразу следующие 3 элемента? вместо previous видимо нужно next, а чтобы еще 2 элемента удалились... Ухх, бля, это было бы самое то. Охренеть конечно сколько способов есть
Можно конечно по цепочке удалять с конца nextElementSibling.nextElementSibling.nextElementSibling, но это какое-то ебло некрасивое, для таких целей лучше элементы которые нужно удалить группой помещать в контейнер типа div и удалять разом или в цикле по классу, может еще как можно - я уже два года не писал на JS, стал забывать DOM.
>>258553761 Инспектор браузера открой (в гугл хроме F12 - вкладка элементы) ткни нужный элемент на своем примере, теперь переключись на вкладку консоль напиши $0.nextElementSibling.nextElementSibling.nextElementSibling, $0 это текущий выделенный тобой элемент, если будет в результате null значит следующие элементы закончились, эксперементирую в консоли, хром инспектор будет выдавать подсказки - гугли походу и почитай какого-нбудь Кантора, я спать.
Прописываю то, что видите на пиках и работает только первый созданный элемент, остальные не работают. КАк это исправить. Мне подсказали, что надо передать ноль, чтобы функция не крашилась, но я хз как это сделать, поясните, плз новичку, нихуя не понимаю.
для удобства кидаю еще код на кодепине:
https://codepen.io/cdjldc-54/pen/jOLgMEw