node和element的差别 1. node是节点,其中包含不同类型的节点,而element只是node节点的一种; 2. element继承于node,具有node的方法,同时又拓展了很多自己的特有方法。
本教程操作环境windows7系统、javascript1.8.5版、dell g3电脑。
我们经常使用document.getelementbyid去获取dom中的元素,也会使用childnodes来获取子节点。这样的话element和node的差别是什么?
node提供的节点与element提供的节点在学jquery的时候,大家是不是也是总混淆node与eleme
左边为node/右边为elementnode与element的关系node与element的关系,从继承方面思考可能清晰很多。
element 继承于 node,具有node的方法,同时又拓展了很多自己的特有方法。
在element的一些方法里,是明确区分了node和element的
比如说childnodes与 children, parentnode与parentelement等方法。
node的一些方法,返回值为node,比如说文本节,注释节点之类的,而element的一些方法,返回值则绝对就是element。
区分清楚这点了,也能防止很多低级问题。
简单的说就是node是一个基类,dom中的element,text和comment都继承于它。
换种说法,element,text和comment是三种特殊的node,它们分别叫做element,node,
text,node和comment,node。
所以我们平时使用的html上的元素,即element,是类型为element,node的node。
总结node是节点,其中包含不同类型的节点,element只是node节点的一种。
element继承与node,可以调用node的方法。
给所有dom元素添加方法,只需要污染node或者element的原型链就行。
node在这儿指dom节点,其中包括了我们最常常出现在大家视野里的元素节点,比如 div/p/span 之类的。除此之外还包括了 document/comment 之类的节点。
一个节点的类型,可以借助其nodetype类型查看到,具体的类型则可以看下图
【相关推荐javascript学习教程】