回答編集履歴

3

解説の追加

2019/09/16 02:37

投稿

hatena19
hatena19

スコア34073

test CHANGED
@@ -82,6 +82,4 @@
82
82
 
83
83
  ```
84
84
 
85
-
86
-
87
- forループでdiv-btnの背景色を戻しています。
85
+ getElementsByClassName は複数の要素を返しますので(Elementsと複数形になっていることに注目してください)、forループですべての div-btn の背景色を戻しています。

2

コード追加

2019/09/16 02:37

投稿

hatena19
hatena19

スコア34073

test CHANGED
@@ -53,3 +53,35 @@
53
53
 
54
54
 
55
55
  onclick の function の引数にthisを渡すことで、クリックした要素を取得できます。
56
+
57
+
58
+
59
+ ---
60
+
61
+ コメントでの要望の、クリックした以外の要素の背景色を戻す処理を追加しました。
62
+
63
+ ```js
64
+
65
+ function func_1(button){
66
+
67
+ var elements = document.getElementsByClassName("div-btn");
68
+
69
+ for(i=0;i<elements.length;i++){
70
+
71
+ elements[i].style.backgroundColor = "lightgray";
72
+
73
+ }
74
+
75
+ button.style.background="red";
76
+
77
+ let input = button.firstElementChild.textContent;
78
+
79
+ document.getElementById("res").value = input;
80
+
81
+ }
82
+
83
+ ```
84
+
85
+
86
+
87
+ forループでdiv-btnの背景色を戻しています。

1

解説追加

2019/09/16 02:31

投稿

hatena19
hatena19

スコア34073

test CHANGED
@@ -49,3 +49,7 @@
49
49
  }
50
50
 
51
51
  ```
52
+
53
+
54
+
55
+ onclick の function の引数にthisを渡すことで、クリックした要素を取得できます。