nodeType介绍及应用示例

一,DOM中的节点类型介绍

  DOM将一份文档抽象为一棵树,而树又由众多不同类型的节点构成。

  元素节点是DOM中的最小单位节点,它包括了各种标签,比如表示段落的p,表示无序列表的ul等。

  文本节点总是被包含在元素节点内部,例如<p和</p>之间的内容就是文本节点。

  属性节点总是被放在标签里面,例如title,id,name等。

  CSS同样是DOM的构成之一,它定义了浏览器该怎样显示一份文档。

二,nodeType

  通过node.nodeType的调用可以获得节点类型,共有12种取值,但是仅有3种具有实用价值,也就是上面提到的元素节点,属性节点和文本节点,它们对应的nodeType取值分别是1,2和3。

三,一个小函数:getNextElement

  JavaScript中提供了nextSibing属性用来查找下一个节点,但是如果我们需要查找下一个元素节点的话就需要自己编写函数,下面给出一个实现:

1 function getNextElement(node)
2 {
3     if(node.nodeType == 1)
4         return node;
5     if(node.nextSibling)
6         return getNextElement(node.nextSibling);
7     return null;
8 }
时间: 2024-10-10 15:05:37

nodeType介绍及应用示例的相关文章

四种生成和解析XML文档的方法详解(介绍+优缺点比较+示例)

四种生成和解析XML文档的方法详解(介绍+优缺点比较+示例) 众所周知,现在解析XML的方法越来越多,但主流的方法也就四种,即:DOM.SAX.JDOM和DOM4J 下面首先给出这四种方法的jar包下载地址 DOM:在现在的Java JDK里都自带了,在xml-apis.jar包里 SAX:http://sourceforge.net/projects/sax/ JDOM:http://jdom.org/downloads/index.html DOM4J:http://sourceforge.

#协程介绍及基本示例

1 #协程介绍及基本示例 2 3 #Gevent协程(单线程,串行)在线程里启动 4 ''' 5 协程,又称微线程,纤程.英文名Coroutine.一句话说明什么是线程: 6 协程是一种用户态的轻量级线程. 7 8 协程拥有自己的寄存器上下文和栈.协程调度切换时, 9 将寄存器上下文和栈保存到其他地方,在切回来的时候, 10 恢复先前保存的寄存器上下文和栈.因此: 11 12 协程能保留上一次调用时的状态(即所有局部状态的一个特定组合), 13 每次过程重入时,就相当于进入上一次调用的状态,换种

Android系统下载管理DownloadManager功能介绍及使用示例

http://www.trinea.cn/android/android-downloadmanager/ 本文主要结合源码介绍Android系统下载管理DownloadManager的强大功能及使用.这是许久来准备写的一系列博客,这篇主要介绍DownloadManager的功能和示例,后面还有两篇会介绍下载管理的底层设计(DownloadProvider.DownloadManager.DownloadManagerUI).下载管理如何进行功能增强和bug修改. 示例APK可从这些地址下载:G

HTML DOM的nodeName,nodeValue,nodeType介绍

将HTML DOM中几个常用的属性做下介绍,工作中作为参考. nodeName 属性可依据节点的类型返回其名称. 元素节点的 nodeName 是标签名称 属性节点的 nodeName 是属性名称 文本节点的 nodeName 永远是 #text 文档节点的 nodeName 永远是 #document 注:nodeName 所包含的 XML 元素的标签名称永远是大写的. nodeValue 属性设置或返回指定节点的节点值. 对于文本节点,nodeValue 属性包含文本. 对于属性节点,nod

DOM4J介绍与代码示例

DOM4J是dom4j.org出品的一个开源XML解析包.Dom4j是一个易用的.开源的库,用于XML,XPath和XSLT.它应用于Java平台,采用了Java集合框架并完全支持DOM,SAX和JAXP. DOM4J下载jar包:http://downloads.sourceforge.net/dom4j/dom4j-1.6.1.jar JAXEN(对XPath的支持):http://dist.codehaus.org/jaxen/distributions/jaxen-1.1.1.zip 1

maven的scm插件介绍及使用示例

Maven中为我们集成了软件配置管理的(SCM:Software Configuration Management)功能,他可以支持我们常用SVN.CVS等,到现在我使用的1.8.1版本,共支持18个命令: scm:branch - branch the project(创建项目的分支) scm:validate - validate the scm information in the pom(校验SCM的配置信息) scm:add - command to add file(增加一个文件)

Redis基础介绍及安装示例

1.基本概念 Redis是由Salvatore Sanfilippo(意大利)开发的一个开源的高性能键值存储数据库,于2009年发布第一个版本并与同一年开源,官方站点:http://www.redis.io/ ,最新的稳定版本为2.8.17.建议线上业务使用早于目前1-2版本的稳定版~ Redis自身提供多种键值数据类型来适应不同场景下的存储需求,同时利用他的数据类型结合各种封装的接口可以实现如缓存.队列等功能的应用.目前我所接触的线上业务都是使用其缓存功能的. 2.特性丰富 1.数据类型:字符

【Unity 3D 游戏开发】Unity3D 入门 - 工作区域介绍 与 入门示例

一. 工作区域详解 1. Scence视图 (场景设计面板) scence视图简介 : 展示创建的游戏对象, 可以对所有的游戏对象进行 移动, 操作 和 放置; -- 示例 : 创建一个球体, 控制摄像机, 让球体在摄像机拍摄的视图中显示出来; (1) 摄像机导航 摄像机旋转(Tumble) : alt + 鼠标左键, 摄像机会按照鼠标滚动的垂直中线进行旋转, 可以查看摄像机当前的状态, 注意只是改变视图中的状态, 摄像机还是在视图正中央位置, 摄像机的位置属性是不变的; 摄像机移动(Track

HBase学习(十一)hbase Java API 介绍及使用示例

几个相关类与HBase数据模型之间的对应关系 java类 HBase数据模型 HBaseAdmin 数据库(DataBase) HBaseConfiguration HTable 表(Table) HTableDescriptor 列族(Column Family) Put 列修饰符(Column Qualifier) Get Scanner 一.HBaseConfiguration 关系:org.apache.hadoop.hbase.HBaseConfiguration 作用:对HBase进