📖
JavaScript - 網站程式設計
  • JavaScript - 網站程式設計
  • 1. 簡介
    • 1.1 講者簡介
    • 1.2 課程簡介
    • 1.3 開發工具簡介
  • 2. JS 在網頁上的基本觀念
    • 2.1 變數宣告
    • 2.2 資料型態
    • 2.3 基礎節點操控
    • 2.4 套用方式
  • 3. 瀏覽器物件模型 (BOM)
    • 3.1 Window
    • 3.2 Location
    • 3.3 內建彈出視窗
  • 4. 文件物件模型 (DOM)
    • 4.1 DOM 簡介
    • 4.2 取得節點、內容、屬性
    • 4.3 節點查找(Traversing)
    • 4.4 更新節點
    • 4.5 新增節點
    • 4.6 刪除節點、屬性
    • 4.7 操控 class 屬性
    • 4.8 練習
  • 5. 事件 (Events)
    • 5.1 事件(Event)簡介
    • 5.2 事件物件(Event Object)
    • 5.3 window 及 document 事件
    • 5.4 滑鼠相關事件
    • 5.5 鍵盤相關事件
    • 5.6 scroll 事件
    • 5.7 表單事件及停止元素預設行為
    • 5.8 動態事件綁定
    • 5.9 練習
  • 6. 表單 (Form)
    • 6.1 取得表單資料
    • 6.2 設定表單資料
    • 6.3 練習
  • 7. 儲存機制(Storage)
    • 7.1 Cookies
    • 7.2 localStorage
  • 8. ECMAScript (ES)
    • 8.1 Template String
    • 8.2 Arrow Function
    • 8.3 Spread and Rest Operator
    • 8.4 物件屬性簡寫
    • 8.5 解構賦值
  • 9. 作業
  • 10. 參考資料
Powered by GitBook
On this page
  • 往內層找
  • .querySelector() 與 .querySelectorAll()
  • .children
  • .firstElementChild 與 .lastElementChild
  • 找第 n 個子元素
  • 往同層找
  • .previousElementSibling
  • .nextElementSibling
  • 往父層找
  • .parentElement
  • .closest()
  1. 4. 文件物件模型 (DOM)

4.3 節點查找(Traversing)

以這個 html 為例:

<p class="para">段落一</p>
<p class="para">段落二</p>

<div id="my_block">
  <h1>h1 標題</h1>
  <ul class="my_list">
    <li><a href="#" class="link">連結二</a></li>
    <li><a href="#" class="link">連結三</a></li>
    <li><a href="#" class="link">連結四</a></li>
  </ul>
  <a href="#" class="link">連結一</a>
</div>

<p class="para">段落三</p>
<p class="para">段落四</p>

往內層找

.querySelector() 與 .querySelectorAll()

往內層找元素,回傳的會是 NodeList,可以使用 .forEach() 函式。

例:

.children

找到第一層的子元素。回傳的會是 HTMLCollection,無法使用 .forEach()函式。

例:

.firstElementChild 與 .lastElementChild

找到第一個子元素、找到最後一個子元素。

例:

找第 n 個子元素

透過 querySelector 往內層找,以及使用 :nth-child():

var my_block = document.getElementById("my_block");

var nth_child = my_block.querySelector("ul.my_list > li:nth-child(2)");

例:

往同層找

.previousElementSibling

找到同層的前一個元素。

例:

.nextElementSibling

找到同層的下一個元素。

例:

往父層找

.parentElement

找到最近的父元素。

例:

.closest()

往父層找,找到指定的元素。

例:

Previous4.2 取得節點、內容、屬性Next4.4 更新節點

Last updated 1 year ago