回答編集履歴

1

コードを追加

2018/04/07 04:53

投稿

defghi1977
defghi1977

スコア4756

test CHANGED
@@ -19,3 +19,59 @@
19
19
  NOTE:
20
20
 
21
21
  と解釈しましたが如何でしょうか?
22
+
23
+
24
+
25
+ ---
26
+
27
+
28
+
29
+ `input`要素の入力状態によってスタイルを切り替えたいとのことでしたので, `input`要素の入力内容を監視し, その内容によってクラスを付け替えるようにしてみました.
30
+
31
+
32
+
33
+ NOTE:
34
+
35
+ 本来このような動作を単純化するためにCSSが存在するのですが, うまく要件に合致する擬似クラスを見つけることが出来ませんでした.
36
+
37
+
38
+
39
+ ```HTML
40
+
41
+ <input id="address"/>
42
+
43
+ ```
44
+
45
+ ```CSS
46
+
47
+ input{
48
+
49
+ background-color: white;
50
+
51
+ }
52
+
53
+ input.inputted{
54
+
55
+ background-color: yellow;
56
+
57
+ }
58
+
59
+ ```
60
+
61
+ ```JavaScript
62
+
63
+ "use strict";
64
+
65
+ {
66
+
67
+ (function observe(){
68
+
69
+ address.classList[address.value == "" ? "remove" : "add"]("inputted");
70
+
71
+ requestAnimationFrame(observe);
72
+
73
+ })();
74
+
75
+ }
76
+
77
+ ```