回答編集履歴

2

調整

2024/10/09 07:25

投稿

yambejp
yambejp

スコア116722

test CHANGED
@@ -37,3 +37,24 @@
37
37
  <li>C</li>
38
38
  </ul>
39
39
  ```
40
+
41
+ # 追記
42
+
43
+ >.toggleはこれによって背景が変わってチェックマークが付いたり消えたり
44
+
45
+ はい、クラスのつけ外しは、classListをtoggleすることで可能です
46
+
47
+ ```html
48
+ <style>
49
+ .done{color:red;}
50
+ </style>
51
+ <script>
52
+ document.addEventListener('click',({target})=>{
53
+ if(target.matches(".hoge")){
54
+ target.classList.toggle('done'); //hogeをクリックするたびにdoneクラスがついたり消えたりする
55
+ }
56
+ });
57
+ </script>
58
+ <div class="hoge">hoge</div>
59
+ <div class="fuga">fuga</div>
60
+ ```

1

テスト

2024/10/09 03:13

投稿

yambejp
yambejp

スコア116722

test CHANGED
@@ -16,3 +16,24 @@
16
16
  </script>
17
17
  ```
18
18
 
19
+ なおクリックされたHTML要素(イベントターゲット)は以下のような選び方が可能です
20
+ ```html
21
+ <script>
22
+ document.addEventListener('click',({target})=>{
23
+ if(target.matches('li')){
24
+ console.log(1);
25
+ }
26
+ if(target.tagName=="LI"){
27
+ console.log(2);
28
+ }
29
+ if(target instanceof HTMLLIElement){
30
+ console.log(3);
31
+ }
32
+ });
33
+ </script>
34
+ <ul>
35
+ <li>A</li>
36
+ <li>B</li>
37
+ <li>C</li>
38
+ </ul>
39
+ ```