案例一:
假設(shè)我們有一個(gè)網(wǎng)頁,其中有兩個(gè)<div>元素,一個(gè)用于展示用戶的個(gè)人信息,另一個(gè)用于顯示用戶的文章列表。我們希望點(diǎn)擊一個(gè)按鈕后,個(gè)人信息<div>元素的樣式發(fā)生變化,比如變?yōu)榧t色背景。那么我們可以使用JavaScript來實(shí)現(xiàn)這一功能。
const btn = document.getElementById("changeStyleBtn");
const infoDiv = document.getElementById("info");
<br>
btn.addEventListener("click", function() {
infoDiv.classList.add("red-bg");
});
通過上述代碼,我們使用classList.add()方法向<div>元素的class屬性添加了一個(gè)名為"red-bg"的類。在CSS中,我們可以為這個(gè)類設(shè)置紅色背景樣式,如下所示:
.red-bg {
background-color: red;
}
這樣,當(dāng)用戶點(diǎn)擊按鈕時(shí),個(gè)人信息<div>元素的樣式會(huì)發(fā)生變化,背景變?yōu)榧t色。
案例二:
在某個(gè)網(wǎng)站的導(dǎo)航欄中,有一個(gè)<div>元素用于展示當(dāng)前所處頁面的名稱。我們希望在用戶點(diǎn)擊導(dǎo)航欄中的某個(gè)選項(xiàng)時(shí),這個(gè)<div>元素根據(jù)不同的選項(xiàng)顯示不同的名稱。下面的代碼展示了如何根據(jù)用戶點(diǎn)擊的選項(xiàng)來修改<div>元素的class屬性,并顯示不同的頁面名稱。
const navItems = document.querySelectorAll(".nav-item");
const pageTitleDiv = document.getElementById("page-title");
<br>
navItems.forEach(function(item) {
item.addEventListener("click", function() {
// 清除所有選項(xiàng)的類
navItems.forEach(function(item) {
item.classList.remove("active");
});
<br>
// 為點(diǎn)擊的選項(xiàng)添加類,并修改頁面名稱
this.classList.add("active");
pageTitleDiv.innerHTML = this.innerHTML;
});
});
通過上述代碼,我們使用classList.remove()方法清除所有選項(xiàng)的類,然后使用classList.add()方法為點(diǎn)擊的選項(xiàng)添加一個(gè)名為"active"的類。根據(jù)"active"類的不同,我們可以為導(dǎo)航欄中處于活動(dòng)狀態(tài)的選項(xiàng)設(shè)置不同的樣式,同時(shí)也可以根據(jù)這個(gè)類來修改<div>元素中顯示的頁面名稱。
通過以上兩個(gè)案例,我們可以看到如何通過修改<div>元素的class屬性來改變區(qū)域的樣式或行為。這樣的操作可以讓我們更加靈活地控制和調(diào)整網(wǎng)頁的各個(gè)部分,從而提供更好的用戶體驗(yàn)。