js操作dom元素

简介: js操作dom元素

当使用JavaScript操作DOM时,可以通过各种方法来实现对元素的获取、修改、创建、删除等操作。以下是一些详细的代码示例:

1. 获取元素

javascript复制代码

// 通过ID获取元素
var elementById = document.getElementById('myElementId');
// 通过类名获取元素集合
var elementsByClass = document.getElementsByClassName('myClassName');
// 通过标签名获取元素集合
var elementsByTagName = document.getElementsByTagName('div');
// 通过CSS选择器获取元素
var elementBySelector = document.querySelector('.myClassName');
// 通过CSS选择器获取元素集合
var elementsBySelector = document.querySelectorAll('.myClassName');

2. 修改元素内容

javascript复制代码

// 获取元素并修改其HTML内容
var element = document.getElementById('myElement');
element.innerHTML = '<p>新的HTML内容</p>';
// 获取元素并修改其文本内容
element.innerText = '新的文本内容';
// 获取元素并修改其文本内容(与innerText类似)
element.textContent = '新的文本内容';

3. 修改元素属性

javascript复制代码

// 获取元素并设置其属性
var link = document.getElementById('myLink');
link.setAttribute('href', 'https://example.com');
link.setAttribute('target', '_blank');
// 获取元素并获取其属性值
var hrefValue = link.getAttribute('href');
console.log(hrefValue); // 输出: https://example.com
// 删除元素的属性
link.removeAttribute('target');

4. 修改元素样式

javascript复制代码

// 获取元素并直接修改其行内样式
var myDiv = document.getElementById('myDiv');
myDiv.style.color = 'red';
myDiv.style.backgroundColor = 'lightgrey';
// 使用classList添加类名
myDiv.classList.add('highlight');
// 使用classList删除类名
myDiv.classList.remove('highlight');
// 检查元素是否包含某个类名
if (myDiv.classList.contains('highlight')) {
console.log('myDiv包含highlight类');
}

5. 创建和添加元素

javascript复制代码

// 创建一个新的元素
var newElement = document.createElement('p');
// 设置新元素的文本内容
var textNode = document.createTextNode('这是一个新的段落。');
newElement.appendChild(textNode);
// 将新元素添加到现有元素的子节点列表末尾
var container = document.getElementById('container');
container.appendChild(newElement);
// 在参考节点之前插入新节点
var referenceNode = container.firstChild;
container.insertBefore(newElement, referenceNode);

6. 删除元素

javascript复制代码

// 获取要删除的元素
var elementToRemove = document.getElementById('elementToRemove');
// 获取元素的父节点并删除该元素
var parentElement = elementToRemove.parentNode;
parentElement.removeChild(elementToRemove);

这些代码示例只是JavaScript操作DOM的基础部分。在实际应用中,可能会涉及到更复杂的DOM结构和操作,但基本的原理和方法是类似的。记住,DOM操作可能会引起页面重绘和重排,因此应尽量避免频繁的DOM操作,以提高页面性能。

目录
相关文章
|
6天前
|
JavaScript
js【图解】滚动条的位置(文档与屏幕间的距离),鼠标事件距离(位置),元素距离(位置)
js【图解】滚动条的位置(文档与屏幕间的距离),鼠标事件距离(位置),元素距离(位置)
16 7
|
5天前
|
JavaScript 前端开发 索引
JavaScript编码之路 【JavaScript之操作数组、字符串方法汇总】(三)
JavaScript编码之路 【JavaScript之操作数组、字符串方法汇总】(三)
10 1
|
5天前
|
存储 JavaScript 前端开发
js/javascript 操作字符串【全】(含常用的操作字符串的lodash)
js/javascript 操作字符串【全】(含常用的操作字符串的lodash)
5 1
|
2天前
|
缓存 JavaScript API
js【详解】DOM
js【详解】DOM
5 0
|
2天前
|
JavaScript
JS数组操作---删除,arr.pop()方法从数组中删除最后一个元素,并返回该元素的值,arr.shift() 删除第一个值,arr.splice()方法,删除指定元素,arr.splice,从第一
JS数组操作---删除,arr.pop()方法从数组中删除最后一个元素,并返回该元素的值,arr.shift() 删除第一个值,arr.splice()方法,删除指定元素,arr.splice,从第一
|
3天前
|
JavaScript
js 数组移除指定元素【函数封装】(含对象数组移除指定元素)
js 数组移除指定元素【函数封装】(含对象数组移除指定元素)
4 0
|
5天前
|
JavaScript 前端开发 索引
JavaScript编码之路 【JavaScript之操作数组、字符串方法汇总】(一)
JavaScript编码之路 【JavaScript之操作数组、字符串方法汇总】(一)
7 0
|
5天前
|
存储 JavaScript 前端开发
JavaScript编码之路 【JavaScript之操作数组、字符串方法汇总】(二)
JavaScript编码之路 【JavaScript之操作数组、字符串方法汇总】(二)
6 0
|
5天前
|
前端开发 JavaScript
js 进入浏览器全屏(F11效果)、退出全屏、指定元素全屏、判断当前是否全屏、监听浏览器全屏事件、定义全屏时的css样式(全屏伪类)
js 进入浏览器全屏(F11效果)、退出全屏、指定元素全屏、判断当前是否全屏、监听浏览器全屏事件、定义全屏时的css样式(全屏伪类)
7 0
|
5天前
|
JavaScript 前端开发
js/javascript 操作对象【全】(含常用的操作对象的lodash)
js/javascript 操作对象【全】(含常用的操作对象的lodash)
5 0