DOM常用操作方法

DOM的增删改查

DOM的节点类型

  1. element元素节点

  2. attribute:属性节点

  3. text文本节点

  4. comment:注释节点

  5. document:文档节点 代表整体页面

节点类型官方文档:

https://developer.mozilla.org/zh-CN/docs/Web/API/Node/nodeType

1. 创建(增)

     1.createElement() 创建标签
     2.createTextNode() 创建文本
     3.createDocumentFragment() 创建文档碎片,所有的操作是在内存中进行的
      为了避免重绘和回流:咱们插入dom时可采用createDocumentFragment,最后一次性           的再添加到页面的dom中 
  
    //先创建li,然后插入到ul中
       var oul=document.querySelector('.list')
    //先创建一个文档碎片
        var fragment=document.createDocumentFragment();
			   for(var i=0;i<100;i++) {
			        var newLi=document.createElement('li');
			        newLi.textContent=`项目${i+1}` 
			        fragment.appendChild(newLi)  //已经将100个li添加到fragment上了
			
			   }
   oul.appendChild(fragment);

4.cloneNode(true)  克隆  //添加true代表深度克隆,包括子节点的所有内容也可以克隆过来

2. 修改

父节点.appendChild(子节点)  尾追加
父节点.insertBefore(新节点,参考节点) 前追加
父级节点.removeChild(要删除的子级节点) 移除节点
replaceChild(新节点,旧节点)  替换节点

3. 查询

getElementById()  获取id ,如果页面上有多个相同id,只返回第一个
getElementsByTagName() 获取标签名 返回是类数组
getElementsByName()  获取表单中name名称  返回类数组
getElementsByClassName  只能获取class名称  返回类数组
querySelector  只获取匹配的第一个css选择器  //特别适合移动端
querySelectorAll  获取匹配的css选择器类数组 //特别适合移动端

4. 节点关系

parentNode:找父节点
parentElement:找父元素

previousSibling:找前一个兄弟节点
previousElementSibling:找前一个兄弟元素
nextSibling:找后一个兄弟节点
nextElementSibling:找后一个元素节点

childNodes:属性,即包括元素节点,也包括文本节点
children:属性 只获取直接子级元素,不获取文本节点(元素类型===1)
firstNode:找第一个节点
lastNode:找最后一个节点
hasChildNodes:用于判断是否有子元素

5. 属性型

setAttribute
getAttribute

6. 样式型

window.getComputedStyle:获取css样式

getBoundingClientRect  获取dom的位置信息

js官方查询文档

https://developer.mozilla.org/zh-CN/docs/Web/JavaScript

js官方查询文档 传送门

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值