js中易混淆知识点

本文详细介绍了DOM操作中的核心概念,如nodeType、nodeValue、nodeName的区别,以及offsetParent、parentNode、parentElement之间的联系。此外还对比了e.target与e.srcElement、insertBefore与appendChild等方法的不同之处。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.nodeType,nodeValue,nodeName

nodeType用来返回节点类型,为了兼容IE,最好将nodeTyep属性与数字值进行比较,比较常用的节点判断见下表

            1元素节点
            2属性节点
           3文本节点
           8注释
           9文档

nodeName中保存的始终都是元素的标签名,元素标签中,是属性名;在文本标签中,是#text

ps:注意区分nodeName和tagName,语义一样,都是返回标签名,nodeName可在所有节点上使用,而tagName只能在元素标签上使用

nodeValue,对于文本节点,nodeValue属性包含文本,属性节,nodeValue包括属性值,nodeValue对于文档节点和元素节点是不可用的

2.offsetParent,parentNode,parentElement

offsetParent指与位置有关的上级关系

parentNode指与位置无关的上级元素

parentElement与parentNode同理,但是parentNode是标准规定,而parentElem是在IE中使用的

3.e.target和e.srcElement

两个都是用于获取目标元素,e.target是标准规定的,e.srcElement是兼容IE使用的

4.insertBefore(),appendChild()方法的区别

appendChild(),用于向childNodes列表的末尾添加一个节点

insertBefore(),将节点添加至列表中某个特定位置,该方法接受两个参数:要插入的节点和做为参考的节点,插入结点后,被插入的节点会变成参考节点的前一个同胞节点。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值