2019/10/30 13:29 編集
ミス
投稿2019/10/30 11:20
ローカルストレージから出すときにクリックイベントがうまくつきません。
onloadイベントでこの下記のコードのイベントをします。そのイベントの中で<li>を作るたびにそこにクリックイベントをつけるつもりです。
onloadイベントではなくinputタグから追加するときはすべてにつけることができます。
javascript
1var loadlsta=JSON.parse(localStorage.getItem('keya')); 2 3 loadlsta.forEach(function(loadtask){ 4 let lists = document.getElementById("todolist-a"); 5 lists.insertAdjacentHTML("beforeend","<li><p>◉</p>"+loadtask+"<i class='far fa-trash-alt gomi'></i></li>"); 6 let i=0; 7 lists.querySelector('p').addEventListener('click',function(){ 8 let lank = ["◉","✮","▴","✓"]; 9 i++; 10 if(i==4){ 11 i=0; 12 } 13 this.innerHTML=lank[i]; 14 15 switch(i){ 16 case 0 : 17 this.parentNode.style.color = '#000' 18 this.parentNode.style.textDecoration = "none" 19 break; 20 case 1 : 21 this.parentNode.style.color = '#00f' 22 this.parentNode.style.borderBottom = '2px solid #f00' 23 break; 24 case 2 : 25 this.parentNode.style.color = '#666' 26 this.parentNode.style.borderBottom = '0.5px solid #d1d405' 27 break; 28 case 3 : 29 this.parentNode.style.color = '#ccc' 30 this.parentNode.style.textDecoration = "line-through #000" 31 break; 32 } 33 34 }); 35 lists.querySelector('i').addEventListener('click',function(){ 36 this.parentNode.remove(); 37 }) 38 39 });
回答1件
あなたの回答
tips
プレビュー