原生js的dom操作(常用的整理)

3 篇文章 0 订阅

父节点
parentNode

第一个子节点 只会获取到元素节点

firstElementChild ★★★★★    ​

第一个子节点 (如果有文本节点将会获取到文本节点)

firstChild

​ 

最后一个节点 只会获取到元素节点

lastElementChild ★★★★★

最后一个子节点 (如果有文本节点将会获取到文本节点)

lastChild    ​ 

当前节点的后一个(下一个)节点 注:只会获取到元素节点(dom操作推荐使用这种方法,IE9测试兼容,IE8未测试)

nextElementSibling ★★★★★

​ ​ 当前节点的后一个(下一个)节点 (如果下一个节点是文本节点的话将获取到文件节点)

nextSibling

​ 当前节点的前一个(上一个)节点 注:只会获取到元素节点(dom操作推荐使用这种方法,IE9测试兼容,IE8未测试)

previousElementSibling ★★★★★

​ 当前节点的前一个(上一个)节点 注:如果上一个节点是文本节点的话将获取到文件节点

previousSibling

当前节点的子节点 注:只会获取到元素节点(IE9测试兼容,IE8未测试)

children ★★★★★

当前节点的子节点 注:子节点中如果有文本节点,那么也会同时获取到

childNodes

​ 节点(元素)的属性

attributes

      li.attributes           //将会输出li节点的所有属性值     注:是属性和值
      li.attributes.id        //将会输出li节点的id属性值    注:是属性和值li.attributes           //将会输出li节点的所有属性值     注:是属性和值
      li.attributes.id        //将会输出li节点的id属性值    注:是属性和值

​ 把指定属性设置或修改为指定的值。

setAttribute()

  
  li.setAttribute("要修改的属性","修改的值")li.setAttribute("要修改的属性","修改的值")

创建一个节点(元素)

document.createElement("div")

 在指定的子节点前面插入新的子节点。

insertBefore()

  
  "父元素".insertBefore("要插入的节点","父元素.children[0]");//将元素插入到父元素的第一个子元素"父元素".insertBefore("要插入的节点","父元素.children[0]");//将元素插入到父元素的第一个子元素

插入新的子节点

appendChild(node)

  
  ul.appendChild(li) //将li节点插入到ul子节点的最后ul.appendChild(li) //将li节点插入到ul子节点的最后

删除子节点

removeChild(node)

  
  ul.removeChild(li) 删除ul的子节点中的li节点ul.removeChild(li) 删除ul的子节点中的li节点

删除当前节点  注:IE9不兼容

remove()

替换元素节点

  
  //父元素.replaceChild (新元素,旧元素 ) 
  node.replaceChild (newnode,oldnode )//父元素.replaceChild (新元素,旧元素 ) 
  node.replaceChild (newnode,oldnode )

插入HTML或者字符串

innerHTML && innerText

  
  h1.innerHTML='<span>插入的标签</span>' //可以插入带标签
  h1.innertext = '文字' //只能插入文字h1.innerHTML='<span>插入的标签</span>' //可以插入带标签
  h1.innertext = '文字' //只能插入文字

表单

td&&tr 获取到自己所在的索引

  
  td.cellIndex//返回td所在tr的索引
  tr.rowIndex//返回tr所在tbody的索引td.cellIndex//返回td所在tr的索引
  tr.rowIndex//返回tr所在tbody的索引

获取自定义属性

  
  '要获取自定义属性的对象'.getAttribute ( 'data-name' )'要获取自定义属性的对象'.getAttribute ( 'data-name' )

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值