欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JavaScript中DOM常見的操作匯總

 更新時(shí)間:2023年08月13日 14:22:41   作者:一花一world  
DOM(文檔對(duì)象模型)是一種用于表示和操作HTML和XML文檔的標(biāo)準(zhǔn),在JavaScript中,可以使用DOM?API來對(duì)DOM進(jìn)行操作,下面就來看看常見的操作都有哪些吧

常見的DOM操作

1.獲取元素:

document.getElementById(id): 根據(jù)元素的id屬性獲取元素。

document.getElementsByClassName(className): 根據(jù)元素的class屬性獲取元素。

document.getElementsByTagName(tagName): 根據(jù)元素的標(biāo)簽名獲取元素。

document.querySelector(selector): 根據(jù)選擇器獲取第一個(gè)匹配的元素。

document.querySelectorAll(selector): 根據(jù)選擇器獲取所有匹配的元素。

2.創(chuàng)建元素:

document.createElement(tagName): 創(chuàng)建一個(gè)指定標(biāo)簽名的元素節(jié)點(diǎn)。

document.createTextNode(text): 創(chuàng)建一個(gè)包含指定文本內(nèi)容的文本節(jié)點(diǎn)。

3.修改元素屬性和內(nèi)容:

element.setAttribute(name, value): 設(shè)置元素的屬性值。

element.getAttribute(name): 獲取元素的屬性值。

element.innerHTML: 設(shè)置或獲取元素的HTML內(nèi)容。

element.innerText: 設(shè)置或獲取元素的文本內(nèi)容。

4.添加和刪除元素:

parentElement.appendChild(newChild): 將一個(gè)新的子節(jié)點(diǎn)添加到指定父節(jié)點(diǎn)的子節(jié)點(diǎn)列表的末尾。

parentElement.removeChild(child): 從指定父節(jié)點(diǎn)的子節(jié)點(diǎn)列表中刪除一個(gè)子節(jié)點(diǎn)。

5.修改元素樣式:

element.style.property = value: 設(shè)置元素的CSS樣式屬性值。

6.添加事件監(jiān)聽器:

element.addEventListener(event, listener): 給元素添加一個(gè)事件監(jiān)聽器。

element.removeEventListener(event, listener): 移除元素的一個(gè)事件監(jiān)聽器。

7.查詢和修改元素的位置和尺寸:

element.getBoundingClientRect(): 獲取元素相對(duì)于視口的位置和尺寸信息。

element.offsetTop: 獲取元素相對(duì)于其父元素的垂直偏移量。

element.offsetLeft: 獲取元素相對(duì)于其父元素的水平偏移量。

element.offsetWidth: 獲取元素的寬度(包括邊框和內(nèi)邊距)。

element.offsetHeight: 獲取元素的高度(包括邊框和內(nèi)邊距)。

這只是一些常見的DOM操作,還有很多其他操作可以根據(jù)具體需求進(jìn)行學(xué)習(xí)和使用。

常見的DOM操作的詳細(xì)代碼示例

1.獲取元素:

// 根據(jù)id獲取元素
const elementById = document.getElementById('myElement');
console.log(elementById);
// 根據(jù)class獲取元素
const elementsByClass = document.getElementsByClassName('myClass');
console.log(elementsByClass);
// 根據(jù)標(biāo)簽名獲取元素
const elementsByTagName = document.getElementsByTagName('div');
console.log(elementsByTagName);
// 根據(jù)選擇器獲取元素
const elementBySelector = document.querySelector('.myClass');
console.log(elementBySelector);
const elementsBySelectorAll = document.querySelectorAll('.myClass');
console.log(elementsBySelectorAll);

結(jié)果示例:

<div id="myElement"></div>
HTMLCollection [div.myClass, div.myClass]
HTMLCollection [div, div, div]
<div class="myClass"></div>
NodeList [div.myClass, div.myClass]

2.創(chuàng)建元素:

// 創(chuàng)建元素節(jié)點(diǎn)
const newElement = document.createElement('div');
newElement.textContent = 'New Element';
console.log(newElement);
// 創(chuàng)建文本節(jié)點(diǎn)
const newText = document.createTextNode('New Text');
console.log(newText);

結(jié)果示例:

<div>New Element</div>
New Text

3.修改元素屬性和內(nèi)容:

// 創(chuàng)建元素節(jié)點(diǎn)
const newElement = document.createElement('div');
newElement.textContent = 'New Element';
console.log(newElement);
// 創(chuàng)建文本節(jié)點(diǎn)
const newText = document.createTextNode('New Text');
console.log(newText);

結(jié)果示例:

123
<span>Hello</span> World
Hello, Vue!

4.添加和刪除元素:

const parentElement = document.getElementById('parentElement');
// 添加子節(jié)點(diǎn)
const newChild = document.createElement('div');
newChild.textContent = 'New Child';
parentElement.appendChild(newChild);
console.log(parentElement);
// 刪除子節(jié)點(diǎn)
parentElement.removeChild(newChild);
console.log(parentElement);

結(jié)果示例:

<div id="parentElement">
  <div>New Child</div>
</div>
<div id="parentElement"></div>

5.修改元素樣式:

const element = document.getElementById('myElement');
// 設(shè)置樣式屬性值
element.style.backgroundColor = 'red';
element.style.color = 'white';
console.log(element.style);

結(jié)果示例:

{
  backgroundColor: 'red',
  color: 'white'
}

6.添加事件監(jiān)聽器:

const button = document.getElementById('myButton');
// 添加點(diǎn)擊事件監(jiān)聽器
button.addEventListener('click', () => {
  console.log('Button clicked');
});
// 移除點(diǎn)擊事件監(jiān)聽器
const clickListener = () => {
  console.log('Button clicked');
};
button.addEventListener('click', clickListener);
button.removeEventListener('click', clickListener);

結(jié)果示例:

Button clicked

7.查詢和修改元素的位置和尺寸:

const element = document.getElementById('myElement');
// 獲取位置和尺寸信息
const rect = element.getBoundingClientRect();
console.log(rect);
// 獲取垂直偏移量
console.log(element.offsetTop);
// 獲取水平偏移量
console.log(element.offsetLeft);
// 獲取寬度和高度
console.log(element.offsetWidth);
console.log(element.offsetHeight);

結(jié)果示例:

DOMRect {
  bottom: 100,
  height: 50,
  left: 100,
  right: 200,
  top: 50,
  width: 100,
  x: 100,
  y: 50
}
50
100
100
50

這些示例展示了一些常見的DOM操作,你可以根據(jù)具體需求進(jìn)行學(xué)習(xí)和使用。

DOM操作的使用場(chǎng)景

1.獲取元素:

使用場(chǎng)景:當(dāng)需要獲取特定元素或一組元素時(shí),可以使用getElementById、getElementsByClassName、getElementsByTagName、querySelector和querySelectorAll等方法。

優(yōu)點(diǎn):方便快捷地獲取所需的元素。

缺點(diǎn):在大型DOM結(jié)構(gòu)中,使用這些方法可能會(huì)導(dǎo)致性能問題。

2.創(chuàng)建元素:

使用場(chǎng)景:當(dāng)需要在DOM中動(dòng)態(tài)創(chuàng)建新的元素節(jié)點(diǎn)或文本節(jié)點(diǎn)時(shí),可以使用createElement和createTextNode方法。

優(yōu)點(diǎn):可以靈活地創(chuàng)建新的元素節(jié)點(diǎn)和文本節(jié)點(diǎn)。

缺點(diǎn):頻繁創(chuàng)建新的元素節(jié)點(diǎn)可能會(huì)影響性能。

3.修改元素屬性和內(nèi)容:

使用場(chǎng)景:當(dāng)需要修改元素的屬性值、HTML內(nèi)容或文本內(nèi)容時(shí),可以使用setAttribute、getAttribute、innerHTML和innerText等方法。

優(yōu)點(diǎn):可以方便地修改元素的屬性和內(nèi)容。

缺點(diǎn):使用innerHTML和innerText方法可能存在安全性問題,因?yàn)樗鼈兛梢詧?zhí)行任意的HTML和腳本代碼。

4.添加和刪除元素:

使用場(chǎng)景:當(dāng)需要將新的元素添加到DOM中或從DOM中刪除元素時(shí),可以使用appendChild和removeChild方法。

優(yōu)點(diǎn):可以靈活地添加和刪除元素。

缺點(diǎn):頻繁添加和刪除元素可能會(huì)影響性能。

5.修改元素樣式:

使用場(chǎng)景:當(dāng)需要修改元素的樣式時(shí),可以通過設(shè)置元素的style屬性來實(shí)現(xiàn)。

優(yōu)點(diǎn):可以動(dòng)態(tài)地改變?cè)氐臉邮健?/p>

缺點(diǎn):使用style屬性直接操作樣式可能會(huì)導(dǎo)致代碼混亂和難以維護(hù)。

6.添加事件監(jiān)聽器:

使用場(chǎng)景:當(dāng)需要在特定事件發(fā)生時(shí)執(zhí)行特定操作時(shí),可以使用addEventListener和removeEventListener方法添加和移除事件監(jiān)聽器。

優(yōu)點(diǎn):可以方便地添加和移除事件監(jiān)聽器。

缺點(diǎn):如果添加的事件監(jiān)聽器過多或處理的邏輯復(fù)雜,可能會(huì)導(dǎo)致性能問題。

7.查詢和修改元素的位置和尺寸:

使用場(chǎng)景:當(dāng)需要獲取元素在視口中的位置和尺寸,或者需要獲取元素相對(duì)于父元素的位置和尺寸時(shí),可以使用getBoundingClientRect、offsetTop、offsetLeft、offsetWidth和offsetHeight等屬性和方法。

優(yōu)點(diǎn):可以方便地獲取元素的位置和尺寸信息。

缺點(diǎn):頻繁查詢和修改元素的位置和尺寸可能會(huì)影響性能。

這些是常見的DOM操作的使用場(chǎng)景和優(yōu)缺點(diǎn),根據(jù)具體的需求和情況選擇合適的操作方式。在使用DOM操作時(shí),需要注意性能問題和安全性問題,避免頻繁操作DOM或執(zhí)行不安全的操作。

到此這篇關(guān)于JavaScript中DOM常見的操作匯總的文章就介紹到這了,更多相關(guān)JavaScript DOM內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論