DOM初级小结

DOM节点类型

dom节点(node)也可以称之为dom对象,分为六种类型:

DocumentType  文档类型节点(<!DOCTYPE html>)
Element       元素节点(标签节点)
Attrinute     属性节点
Text          文本节点
Comment       注释节点
Document      文档节点(指整个页面)

DOM节点关系

只获取节点时
parentElement  获取父元素节点
children   获取子元素节点
firstElementChild   获取第一个孩子元素节点
lastElementChild    获取最后一个孩子元素节点
previousElementSibling   获取上一个兄弟元素节点
nextElementSibling   获取下一个兄弟元素节点

获取所有文本(包括"")
parentNode  获取父元素节点
childNodes   获取子元素节点
firstChild   获取第一个孩子元素节点
lastChild    获取最后一个孩子元素节点
previousSibling   获取上一个兄弟元素节点
nextSibling   获取下一个兄弟元素节点

节点信息

nodeName  节点名
nodeValue  节点值
nodeType  节点类型

获取节点的方法

  • document.getElementById
    通过id属性去查询标签,只能找第一个id,相同则会忽略(因为只有一条数据,所以)
  • document.getElementsByTagName
    通过标签名查询节点(因为通常有多个相同标签名的节点,所以返回值为一个伪数组)
  • document.getElementsByClassName
    通过class属性去查询标签(因为通常有多个相同标签名的节点,所以返回值为一个伪数组)
  • document.getElementsByName
    通过Name属性去查询标签(因为通常有多个相同标签名的节点,所以返回值为一个伪数组)

以下两个方法都可以接受三种类型的参数:id(#),class(.),标签

  • document.querySelector
    通过选择器去查询,只返回匹配的第一个元素
  • document.querySelectorAll
    通过选择器去查询 ,返回匹配的元素集合,如果没有匹配项,返回空的nodelist(节点数组)。

注意:

1.在所有返回值为伪数组的方法中,除了querySelectorAll以外的方法都会实时更新。
2.getElementById 获取效率最高

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在网页开发中,经常需要监听 DOM 元素的大小变化,以便进行动态布局或其他操作。而 JavaScript 提供了一种方便的方法来实现 DOM 元素大小变化的监听。 首先,要监听 DOM 元素的大小变化,需要知道 DOM 元素的尺寸。获取 DOM 元素的尺寸可以通过其属性和方法来实现。比如,可以通过元素的 clientWidth 和 clientHeight 属性获取其内容区域的宽度和高度。 然后,要监听 DOM 元素大小的变化,可以使用 MutationObserver API。MutationObserver API 是浏览器提供的一种用于监听 DOM 变化的 API,它可以监听 DOM 元素的属性、子节点等变化,并在这些变化发生时触发回调函数。 使用 MutationObserver API 监听 DOM 元素大小变化的步骤如下: 1. 创建一个 MutationObserver 对象。 2. 使用 MutationObserver.observe 方法监听目标 DOM 元素的变化。 3. 在回调函数中判断 DOM 元素的尺寸是否发生了变化。 4. 如果尺寸发生变化,则进行相应的操作。 例如,以下代码可以实现监听某个元素宽度变化并输出宽度变化的值: ``` const target = document.querySelector('#target'); const observer = new MutationObserver((mutations) => { mutations.forEach((mutation) => { if (mutation.type === 'attributes' && mutation.attributeName === 'style') { const width = target.clientWidth; console.log(`Width changed to ${width}`); } }); }); observer.observe(target, { attributes: true }); ``` 最后,需要注意的是,使用 MutationObserver 监听 DOM 元素大小的变化虽然方便,但也存在一些限制,例如对于表格的大小变化无法捕获等,需要根据实际情况选择合适的方法来实现 DOM 元素大小的监听。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值