1. DOM 與樹狀結構
- DOM: document:網頁內部
KURO 老師:
DOM 是一個將 HTML 文件以樹狀的結構來表示的模型,而組合起來的樹狀圖,我們稱之為「DOM Tree」。
Huli 老師:瀏覽器提供該橋樑,讓我們用js去改面畫面的東西
API (Application Programming Interface)
- 應用程式 編程 介面
document 物件 API 文件
getElementsByTagName
: 抓取html中某tag的元素1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<html lang="en">
<body>
<div>
hello~
</div>
<div>
yo!
</div>
<script>
const elements = document.getElementsByTagName('div');
console.log(elements);
</script>
</body>
</html>
1 |
|
getElementById
: 注意:getElement 沒有加s!這是用來抓取指定ID1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16<body>
<h1>DOM
</h1>
<div class="block1">
hello~
</div>
<div id="myyo">
yo!
</div>
<script>
const elements = document.getElementById('myyo');
console.log(elements);
</script>
</body>querySelector
: 後面接的是css選擇器只會針對元素的第一筆資料,其他並不會被選入這時候可以使用
- 選擇tag標籤:(‘div’):注意:使用此方式當html有多個div,他只會選擇到第一個符合的
- 選擇cass : (‘.calssName’)
- 選擇id : (‘#idName’)
也可以選區某一tag下的tag
querySelector('div > a')
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17<body>
<h1>DOM
</h1>
<div class="block1">
hello~
</div>
<div id="myyo">
yo!
<a href="#">hello</a>
</div>
<script>
const elements = document.querySelector('div > a');
console.log(elements);
</script>
</body>
querySelectorAll
: 可以選取多個元素
1 | <body> |
順利選則元素之後,嘗試做些改變
可以看看,js如何與瀏覽器互動 ->JavaScript 與瀏覽器的溝通
BOM 與 window 物件
- BOM (Browser Object Model,瀏覽器物件模型),是瀏覽器所有功能的核心,與網頁的內容無關。
- window是瀏覽器的根物件,也是BOM的瀏覽器模型
- window.location.hrrf => 可以知道現在網址
- window.history.back(); => 回到網頁瀏覽的上一頁
參考資料
Day03-深入理解網頁架構:DOM
JS 筆記 - 認識 DOM 文件物件模型
MDN-Document
The HTML DOM Document Object
JavaScript 基礎知識-querySelectorAll
The Document Object Model
JavaScript入門系列:BOM和DOM筆記