@@ -15,16 +15,16 @@ import todoVideo from "./todo.mp4";
1515
1616<video src = { todoVideo } controls muted />
1717
18- ## ヒント
18+ ## 手順
1919
20- いきなり作るのが難しい場合はタスクを分解してみましょう。今回はルールにある4つの課題をひとつずつ解決していきます 。
20+ いきなり作るのが難しい場合はタスクを分解してみましょう。今回はルールにある 4 つの課題をひとつずつ解決していきます 。
2121
22221 . ToDo を追加できるようにする。
23232 . ToDo を削除できるようにする。
24243 . ToDo を編集できるようにする。
25254 . 空の ToDo を追加できないようにする。
2626
27- の4つの仕事があるので 、まず 1 からやっていきましょう。
27+ の 4 つの仕事があるので 、まず 1 からやっていきましょう。
2828
2929### ステップ 1: ToDo を追加する
3030
@@ -59,9 +59,9 @@ addButton.onclick = () => {
5959};
6060```
6161
62- この時箇条書きの項目として新たに ` li ` 要素を追加する必要があります。
63- DOM の章で扱ったように、[ ` document.createElement ` 関数 ] ( https://developer.mozilla.org/ja/docs/Web/API/Document/createElement ) を使うと新しい要素を作成できます 。
64- また、[ ` Node#appendChild ` メソッド ] ( https://developer.mozilla.org/ja/docs/Web/API/Node/appendChild ) を用いることで既存の要素内に子要素を追加することができます 。
62+ このとき、箇条書きの項目として新たに ` li ` 要素を追加する必要があります。
63+ DOM の章で扱ったように、` document.createElement ` 関数を使うと新しい要素を作成できます 。
64+ また、` Node#appendChild ` メソッドを用いることで既存の要素内に子要素を追加することができます 。
6565
6666``` javascript
6767const li = document .createElement (" li" );
@@ -76,7 +76,7 @@ todoText.textContent = todoInput.value; // input 要素に入力された文字
7676todoInput .value = " " ; // input 要素の入力欄を空にする
7777```
7878
79- <Details summary = ' ステップ 1 の解答例 ' >
79+ <Answer title = " ステップ 1" >
8080
8181``` html title="index.html"
8282<!doctype html>
@@ -111,12 +111,12 @@ addButton.onclick = () => {
111111
112112<ViewSource url = { import .meta .url } path = " _samples/step1" />
113113
114- </Details >
114+ </Answer >
115115
116116### ステップ 2: ToDo を削除する
117117
118118次に削除ボタンを追加します。
119- [ ` document.createElement ` 関数 ] ( https://developer.mozilla.org/ja/docs/Web/API/Document/createElement ) で ` button ` 要素を生成し削除ボタンにしてから [ ` Node#appendChild ` メソッド ] ( https://developer.mozilla.org/ja/docs/Web/API/Node/appendChild ) で要素内に追加しましょう 。
119+ ` document.createElement ` 関数で ` button ` 要素を生成し削除ボタンにしてから ` Node#appendChild ` メソッドで要素内に追加しましょう 。
120120
121121削除ボタンを押すと ` li ` 要素が 1 つ消える機能を実装するためには、ある要素から子要素を取り除く [ ` Node#removeChild ` メソッド] ( https://developer.mozilla.org/ja/docs/Web/API/Node/removeChild ) を使います。
122122
@@ -125,7 +125,7 @@ addButton.onclick = () => {
125125todoList .removeChild (todoItem);
126126```
127127
128- <Details summary = ' ステップ 2 の解答例 ' >
128+ <Answer title = " ステップ 2" >
129129
130130``` html title="index.html"
131131<!doctype html>
@@ -166,9 +166,9 @@ addButton.onclick = () => {
166166
167167<ViewSource url = { import .meta .url } path = " _samples/step2" />
168168
169- </Details >
169+ </Answer >
170170
171- ### ステップ 3: ToDo を編集する
171+ ### ステップ 3 (発展) : ToDo を編集する
172172
173173編集ボタンをつけてみましょう。
174174
@@ -179,7 +179,7 @@ addButton.onclick = () => {
179179todoText .textContent = prompt (" 新しい内容を入力してください。" ); // ユーザーに入力を求める
180180```
181181
182- <Details summary = ' ステップ 3 の解答例 ' >
182+ <Answer title = " ステップ 3" >
183183
184184``` html title="index.html"
185185<!doctype html>
@@ -226,9 +226,9 @@ addButton.onclick = () => {
226226
227227<ViewSource url = { import .meta .url } path = " _samples/step3" />
228228
229- </Details >
229+ </Answer >
230230
231- ### ステップ 4: 空の ToDo を入れさせない
231+ ### ステップ 4 (発展) : 空の ToDo を入れさせない
232232
233233[ ` HTMLButtonElement#disabled ` プロパティ] ( https://developer.mozilla.org/ja/docs/Web/API/HTMLButtonElement/disabled ) が ` true ` の時、ボタンはクリックを受け付けなくなります。
234234入力欄が空の時にこのプロパティを ` true ` に、それ以外の時は ` false ` にすることによって空のタスクの追加を防ぐことができます。
@@ -242,9 +242,7 @@ todoInput.oninput = () => {
242242};
243243```
244244
245- ## 解答
246-
247- <Answer >
245+ <Answer title = " ステップ 4" >
248246
249247``` html title="index.html"
250248<!doctype html>
0 commit comments