codepen:
https://codepen.io/UHU/pen/dyyOxaa
這是 js30 day15 的練習,但我想增加刪除項目的功能上去
當點擊 remove button 時可以把 按鈕外的整個 li 元素刪除掉
嘗試過:
let listNum = document.getElementsByTagName("li");
console.log(listNum.length); // 能抓出當下總共有幾個項目
但卡在點擊按鈕時 不知道要如何抓取當下按鈕的 index 值
同時也因為把 e.target 指定給按鈕的緣故
所以抓出按鈕的 nodeList 再 forEach 綁定點擊事件的話又會變成要點擊多次才會執行
謝謝
我沒有細看
不過你可以在 li 補上 id
然後用這樣刪除
const id = e.target.id.replace('btn', '');
document.getElementById(`item${id}`).remove();
localStorage 就交給你處理了
提供另外的解法,不用加id。
不過在ie下不用babel的話我會用D大的用法。
let btns = document.getElementsByTagName("button")
Array.from(btns).map(btn => {
btn.addEventListener("click", function(){
this.parentNode.remove()
})
})