DOM操作节点

82 篇文章 0 订阅
51 篇文章 0 订阅

一、创建节点:

1.createElement创建新元素,接受一个参数,即要创建元素的标签名
const divEl = document.createElement("div");
2.createTextNode创建一个文本节点
const textEl = document.createTextNode("content");
3.createDocumentFragment【不常用】 用来创建一个文档碎片,它表示一种轻量级的文档,主	
要是用来存储临时节点,然后把文档碎片的内容一次性添加到DOM中
const fragment = document.createDocumentFragment();
4.createAttribute 创建属性节点,可以是自定义属性
const dataAttribute = document.createAttribute('custom');
consle.log(dataAttribute);

二、查询获取节点:

1.querySelector
2.querySelectorAll
3.getElementById
4.getElementsByClassName
5.getElementsByTagName
6.getElementsByName
7.document.documentElement;  获取页面中的HTML标签
8.document.body; 获取页面中的BODY标签

除此之外,每个DOM元素还有parentNode、childNodes、firstChild、lastChild、nextSibling、previousSibling属性,关系图如下图所示:
在这里插入图片描述


三、更新节点:

1.innerHTML 可以输出标签间的全部内容,包括里面的HTML标签和文本信息
2.innerText  可以输出标签间的纯文本信息,会将标签过滤掉
3.style DOM节点的style属性对应所有的CSS,可以直接获取或设置。遇到-需要转化为驼峰命名
// 获取<p id="p-id">...</p >
const p = document.getElementById('p-id');
// 设置CSS:
p.style.color = '#ff0000';
p.style.fontSize = '20px'; // 驼峰命名
p.style.paddingTop = '2em';

四、添加节点:

1.innerHTML 
如果这个DOM节点是空的,例如,<div></div>,那么,直接使用innerHTML = 	
'<span>child</span>'就可以修改DOM节点的内容,相当于添加了新的DOM节点;
如果这个DOM节点不是空的,就不能这么做,因为innerHTML会直接替换掉原来的所有子节点
2.appendChild 把一个子节点添加到父节点的最后一个子节点
3.insertBefore 把子节点插入到指定的位置前面
parentElement.insertBefore(newElement, referenceElement) 
子节点会插入到referenceElement之前
4.setAttribute 在指定元素中添加一个属性节点,如果元素中已有该属性改变属性值
const div = document.getElementById('id')
div.setAttribute('class', 'white');//第一个参数属性名,第二个参数属性值

五、删除节点:

删除一个节点,首先要获得该节点本身以及它的父节点,然后,调用父节点的removeChild把自
己删掉
// 拿到待删除节点:
const self = document.getElementById('to-be-removed');
// 拿到父节点:
const parent = self.parentElement;
// 删除:
const removed = parent.removeChild(self);
removed === self; // true
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值