dom中的节点都继承自Node接口, 也就是说, 所有的节点都具有Node接口所规定的属性和方法, 比如下面这个 <a> 标签, 它也继承了Node的所有属性和方法:

可以认为Node接口所规定的方法和属性是操作DOM的基础, 因此格外重要. 下面是它的所有属性和方法:

属性
Node.prototype.nodeType  ---  返回一个整数值,表示节点的类型

Node.prototype.nodeName  ---  返回节点的名称

Node.prototype.nodeValue  ---  返回一个字符串,表示当前节点本身的文本值,该属性可读写

Node.prototype.textContent  ---  返回当前节点和它的所有后代节点的文本内容

Node.prototype.baseURI  ---  返回一个字符串,表示当前网页的绝对路径。浏览器根据这个属性,计算网页上的相对路径的 URL, 该属性为只读

Node.prototype.ownerDocument  ---  返回当前节点所在的顶层文档对象,即document对象

Node.prototype.nextSibling  ---  返回紧跟在当前节点后面的第一个同级节点

Node.prototype.previousSibling  ---  返回当前节点前面的、距离最近的一个同级节点

Node.prototype.parentNode  ---  返回当前节点的父节点

Node.prototype.parentElement  ---  返回当前节点的父元素节点

Node.prototype.firstChild,Node.prototype.lastChild  ---  返回当前节点的第一个 / 最后一个子节点

Node.prototype.childNodes  ---  返回一个类似数组的对象(NodeList集合),成员包括当前节点的所有子节点

Node.prototype.isConnected  ---  返回一个布尔值,表示当前节点是否在文档之中

方法
Node.prototype.appendChild()  ---  接受一个节点对象作为参数,将其作为最后一个子节点,插入当前节点

Node.prototype.hasChildNodes()  ---  返回一个布尔值,表示当前节点是否有子节点

Node.prototype.cloneNode()  ---  用于克隆一个节点

Node.prototype.insertBefore()  ---  将某个节点插入父节点内部的指定位置

Node.prototype.removeChild()  ---  接受一个子节点作为参数,用于从当前节点移除该子节点

Node.prototype.replaceChild()  ---  用于将一个新的节点,替换当前节点的某一个子节点

Node.prototype.contains()  ---  返回一个布尔值,表示参数节点是否满足某种条件

Node.prototype.compareDocumentPosition()  ---  与contains方法完全一致,返回一个六个比特位的二进制值,表示参数节点与当前节点的关系

Node.prototype.isEqualNode(),Node.prototype.isSameNode()  ---  返回一个布尔值,用于检查两个节点是否相等 / 同一节点

Node.prototype.normalize()  ---  用于清理当前节点内部的所有文本节点(text)

Node.prototype.getRootNode()  ---  返回当前节点所在文档的根节点document,与ownerDocument属性的作用相同

怎样理解Node对象接口的更多相关文章

  1. 深入理解Node.js中的垃圾回收和内存泄漏的捕获

    深入理解Node.js中的垃圾回收和内存泄漏的捕获 文章来自:http://wwsun.github.io/posts/understanding-nodejs-gc.html Jan 5, 2016 ...

  2. PHP 面向对象编程和设计模式 (1/5) - 抽象类、对象接口、instanceof 和契约式编程

    PHP高级程序设计 学习笔记 2014.06.09 什么是面向对象编程 面向对象编程(Object Oriented Programming,OOP)是一种计算机编程架构.OOP 的一条基本原则是计算 ...

  3. Atitit 深入理解抽象类与接口 attilax总结

    Atitit 深入理解抽象类与接口 attilax总结 1.1. 主要区别接口侧重于动作抽象..抽象类是属性名词抽象..1 1.2. 抽象层次类>>抽象类>>接口1 1.3. ...

  4. 理解Selection对象

    理解Selection对象 Selection对象的属性如下: var selection = window.getSelection(); console.log(selection); 通过上面的 ...

  5. Java基础之深入理解Class对象与反射机制

    深入理解Class对象 RRIT及Class对象的概念 RRIT(Run-Time Type Identification)运行时类型识别.在<Thinking in Java>一书第十四 ...

  6. 方便大家学习的Node.js教程(一):理解Node.js

    理解Node.js 为了理解Node.js是如何工作的,首先你需要理解一些使得Javascript适用于服务器端开发的关键特性.Javascript是一门简单而又灵活的语言,这种灵活性让它能够经受住时 ...

  7. 深入理解Java的接口和抽象类(转)

    深入理解Java的接口和抽象类 对于面向对象编程来说,抽象是它的一大特征之一.在Java中,可以通过两种形式来体现OOP的抽象:接口和抽象类.这两者有太多相似的地方,又有太多不同的地方.很多人在初学的 ...

  8. 深入理解Java的接口和抽象类

    深入理解Java的接口和抽象类 对于面向对象编程来说,抽象是它的一大特征之一.在Java中,可以通过两种形式来体现OOP的抽象:接口和抽象类.这两者有太多相似的地方,又有太多不同的地方.很多人在初学的 ...

  9. Node对象属性

    1.Node对象属性一            * nodeName             * nodeType            * nodeValue * 使用dom解析html时候,需要ht ...

随机推荐

  1. pwn学习日记Day5 基础知识积累

    知识杂项 int mprotect(const void *start, size_t len, int prot); mprotect()函数把自start开始的.长度为len的内存区的保护属性修改 ...

  2. Linux设备驱动程序 之 read和write

    read和write原型 read和write方法完成的任务是相似的,亦即,拷贝数据到应用程序空间,或者反过来从应用程序空间拷贝数据:因此,它们的原型很相似,如下: ssize_t (*read) ( ...

  3. Linux设备驱动程序 之 装载和卸载模块

    前置说明 本文例子中涉及两个模块hello.ko和world.ko,其中hello导出符号供world使用: insmod 该命令将模块的代码和数据装入内核,然后使用内核的符号表继续模块中任何未解析的 ...

  4. vue中解决three.js出现内存泄漏丢失上下文问题

    在跳转页面时添加以上代码即可. 在spa项目中,跳转页面并不会清楚已经创建的webgl实例,需要手动清楚.

  5. token的解码及 判断值不为空的方法

    token 的解码要使用插件:jwt-decode 判断值不为空的方法: function isEmpty(value){ return ( value === undefined || value ...

  6. mysql数据库指定ip远程访问

    1.登录 mysql -u root -p 之后输入密码进行登陆 2.权限设置及说明 2.1添加远程ip访问权限 GRANT ALL PRIVILEGES ON *.* TO 'root'@'192. ...

  7. openstack compute service list Unable to establish connection to http://controller:8774/v2.1/os-services: ('Connection aborted.', BadStatusLine("''",))

    8774是nova的端口号,所以我就逐一查看nova的日志文件. tail -f /var/log/nova/nova-conductor.log 2019-06-13 08:24:53.559 44 ...

  8. C2B电商三种主要模式的分析_数据分析师

    C2B电商三种主要模式的分析_数据分析师 在过去的一年中电商领域血雨腥风,尤其是天猫.京东.苏宁.当当.易讯等B2C电商打得不亦乐乎.而随着B2C领域竞争进入白热化阶段,C2B模式也在天猫" ...

  9. 同步pod容器内时区

    同步pod容器内时区 .直接修改镜像的时间设置,好处是应用部署时无需做特殊设置,但是需要手动构建Docker镜像. .部署应用时,单独读取主机的“/etc/localtime”文件,即创建pod时同步 ...

  10. Docker在PHP项目开发环境中的应用

    http://avnpc.com/pages/build-php-develop-env-by-docker