---
# System prepended metadata

title: "\U0001F3C5 3/17 (三) 每日任務"
tags: [JS 直播班 - 2021 春季班]

---

# 🏅 3/17 (三) 每日任務
###### tags: `JS 直播班 - 2021 春季班`

innerHTML 觀念複習
---
以下程式碼請同學親自貼入 CodePen 或 VSCode 觀察結果
[參考章節 1](https://courses.hexschool.com/courses/1289881/lectures/30768818)
[參考章節 2](https://courses.hexschool.com/courses/1289881/lectures/30768822)

### 1. 透過 innerHTML 可以取得 DOM 元素內的「HTML 內容」

```htmlembedded=
<div class="targetClass">
  <!--  註解、換行、空白也包含在內  -->
  <p>HTML 標籤的內容也被選取</p>
</div>
```
```js=
let targetClass = document.querySelector(".targetClass");
console.log(targetClass.innerHTML);
```

結果 (以下為 Chrome console 的顯示結果):
![](https://i.imgur.com/o9jjMoO.png)



### 2. 可以透過 innerHTML 替換 DOM 元素內的 HTML，需要注意以下幾個重點:
    1. 原先的所有內容都會被清空
    2. 新的內容將被瀏覽器解析成「HTML」，也就是說會保留 HTML 標籤的特性。

```htmlembedded=
<!-- 以下的 p 標籤會被清空 -->
<div class="targetClass">
  <p>替換這個 p 標籤</p>
</div>
```
```js=
let targetClass = document.querySelector(".targetClass");
targetClass.innerHTML = "<h3>修改後的內容</h3>";
```

結果 1: 
(網頁渲染出的畫面)
![](https://i.imgur.com/jlK0C6J.png)

結果 2: 
(修改後的 HTML 結構)

![](https://i.imgur.com/2ilR3vL.png)


### 3. innerHTML 可以跟變數混合使用

```htmlembedded=
<div class="targetClass"></div>
```
```js=
let targetClass = document.querySelector(".targetClass");
let score = 100;
targetClass.innerHTML = `<p>小華的成績為 ${score} 分</p>`
```

結果 1:
(網頁渲染出的畫面)
![](https://i.imgur.com/Qz857qD.png)

結果 2: 
(修改後的 HTML 結構)

![](https://i.imgur.com/El6951M.png)


問題
---
請練習用 querySelector 取得以下元素，並用 innerHTML 修改它的 HTML 結構。

```htmlembedded=
<div class="targetClass"></div>
```


回報流程
---
將答案寫在 CodePen 並複製 CodePen 連結貼至 thread 中回報就算完成了喔!