初學者指南:掌握 jQuery DOM 操作技巧
更新日期: 2025 年 3 月 9 日
本文為 jQuery 基本介紹系列文,第 2 篇:
- 如何使用jQuery CDN 建立互動網頁
- 初學者指南:掌握 jQuery DOM 操作技巧 👈進度
- 初學者指南:深入了解 jQuery 選擇器
- 使用jQuery 刪除第一個子元素的實作教學
- 初學者指南:深入了解 jQuery 事件處理
- 如何在jQuery 中使用事件監聽器addEventListener
- 了解jQuery 中$().each(function(){}) 與$.each() 的差異
- jQuery 與fetch 的非同步請求方法介紹
- 初學者指南:掌握 jQuery 動畫效果
- 初學者指南:深入了解 jQuery 中的 this 關鍵字
- 初學者指南:深入了解 jQuery .offset() 方法
在網頁開發中,DOM (Document Object Model, 文件物件模型) 是網頁的結構化表示。
它將 HTML 文件中的元素以節點 (Node) 的形式組織起來,讓開發者可以通過程式碼動態地訪問和操作這些元素。
jQuery 作為一個流行的 JavaScript 庫,提供了豐富且便捷的 DOM 操作 方法,讓我們能夠輕鬆地修改頁面內容、樣式以及結構,從而實現更加動態和互動的網頁效果。
本篇文章將為初學者詳細介紹 jQuery 中的各種 DOM 操作方法,包括如何選取元素、修改內容、變更樣式、操作屬性、動態新增和刪除元素等,並提供實用的示例代碼,幫助你快速掌握這項技術。
什麼是 DOM?
DOM (Document Object Model) 是瀏覽器用於解析 HTML 和 XML 文件的結構化模型。
它將頁面中的每個元素(如標籤、屬性、文本)表示為對象 (Object),並以樹狀結構組織,方便程式碼訪問和修改。例如,以下簡單的 HTML 結構:
<div id="container">
<p class="text">Hello, World!</p>
</div>
在 DOM 中將表示為:
Document
└─ <div id="container">
└─ <p class="text">Hello, World!</p>
jQuery 幫助我們輕鬆地選取、修改和操作這些 DOM 元素,從而實現豐富的動態效果。
延伸閱讀:HTML DOM 破解:新手完全指南,帶你深入理解網頁結構
jQuery 中的 DOM 選取
在進行 DOM 操作之前,第一步是選取要操作的元素。
在 jQuery 中,我們可以通過多種選擇器快速選取 DOM 元素,例如:
// 通過 ID 選取元素
$("#container")
// 通過類別選取元素
$(".text")
// 選取所有 <p> 元素
$("p")
// 選取特定屬性的元素
$("input[type='text']")
操作元素內容
修改文本內容 .text()
.text()
用於讀取或修改元素中的純文本內容:
<p id="greeting">Hello, World!</p>
<button id="changeText">改變文字</button>
<script>
// 獲取文本內容
var text = $("#greeting").text();
console.log(text); // 輸出 "Hello, World!"
// 修改文本內容
$("#changeText").click(function() {
$("#greeting").text("Hello, jQuery!");
});
</script>
修改 HTML 內容 .html()
.html()
與 .text()
類似,但它可以處理 HTML 標籤:
<div id="content">這是一段<strong>加粗</strong>的文本。</div>
<button id="changeHtml">改變 HTML</button>
<script>
$("#changeHtml").click(function() {
$("#content").html('<p style="color:red;">新內容已更新!</p>');
});
</script>
操作表單值 .val()
.val()
用於讀取或設置 表單元素(如 <input>
、<select>
)的值:
<input type="text" id="name" placeholder="輸入你的名字">
<button id="getName">顯示名字</button>
<script>
$("#getName").click(function() {
var name = $("#name").val(); // 獲取輸入框的值
alert("你的名字是: " + name);
$("#name").val("預設值"); // 設置新的值
});
</script>
操作元素屬性
取得和設置屬性 .attr()
.attr()
方法可用於讀取或設置元素的屬性 (Attribute):
<img id="myImage" src="image1.jpg" alt="圖片描述">
<button id="changeAttr">更換圖片</button>
<script>
// 獲取屬性值
var src = $("#myImage").attr("src");
console.log(src); // 輸出 "image1.jpg"
// 設置新的屬性值
$("#changeAttr").click(function() {
$("#myImage").attr("src", "image2.jpg").attr("alt", "新圖片描述");
});
</script>
刪除屬性 .removeAttr()
<input type="text" id="myInput" disabled>
<button id="enableInput">啟用輸入框</button>
<script>
$("#enableInput").click(function() {
$("#myInput").removeAttr("disabled");
});
</script>
操作樣式 (CSS)
設置樣式 .css()
<div id="box" style="width:100px; height:100px; background-color:blue;"></div>
<button id="changeColor">變更顏色</button>
<script>
$("#changeColor").click(function() {
$("#box").css({
"background-color": "red",
"border": "2px solid black"
});
});
</script>
操作類別 .addClass()
.removeClass()
.toggleClass()
<div id="message" class="info">這是一條訊息。</div>
<button id="changeClass">切換類別</button>
<script>
$("#changeClass").click(function() {
$("#message").toggleClass("highlight");
});
</script>
<style>
.highlight {
color: white;
background-color: green;
}
</style>
操作 DOM 結構
動態新增元素
$("#parent").append("<p>這是一個新增的段落。</p>"); // 新增到內部結尾
$("#parent").prepend("<p>這是一個新增的段落。</p>"); // 新增到內部開頭
$("#target").before("<p>這是目標元素之前的段落。</p>"); // 在元素之前新增
$("#target").after("<p>這是目標元素之後的段落。</p>"); // 在元素之後新增
刪除元素 .remove()
和 .empty()
$("#element").remove(); // 刪除整個元素 (含子元素)
$("#container").empty(); // 清空元素中的子元素
複製元素 .clone()
var copy = $("#element").clone();
$("#container").append(copy);
結語
jQuery 提供了強大且簡便的 DOM 操作方法,讓開發者可以靈活地動態修改頁面內容、樣式和結構。
對於初學者而言,熟練掌握這些方法,能大大提升你的前端開發效率。
建議多多練習,並將這些技術應用於實際項目中,讓你的網站變得更加生動、互動性更強!