[Java教程]Node节点

0 2016-12-28 15:01:17

1、Node:节点

元素节点->HTML标签

文本节点->文字 但是在标准浏览器(除了IE6~8)中会把空格和换行都当做文本节点来处理

注释节点->注释

document

2、节点的特征

元素节点:

nodeType->1 nodeName->大写的标签名 nodeValue->null

文本节点:

nodeType->3 nodeName->#text nodeValue->文本内容

注释节点:

nodeType->8 nodeName->#comment nodeValue->注释内容

document:

nodeType->9 nodeName->#document nodeValue->null

3、节点之间关系的属性

childNodes:获取所有的子节点(既有元素的,也有文本和注释的)

children:获取所有的元素子节点 ->在IE6~8下我们获取的结果不完全准

parentNode:获取父亲节点

previousSibling:获取上一个哥哥节点(可能是元素也可能文本或者注释)

previousElementSibling:获取上一个元素哥哥节点(肯定是元素节点) ->在IE6~8下不兼容

nextSibling:获取下一个弟弟节点

nextElementSibling:获取下一个元素弟弟节点 ->在IE6~8下不兼容

firstChild:获取所有子节点中的第一个(不一定是元素)

firstElementChild:获取所有元素子节点中的第一个(一定是元素节点) ->在IE6~8下不兼容

lastChild:获取所有子节点中的最后一个(不一定是元素)

lastElementChild:获取所有元素子节点中的最后一个(一定是元素节点) ->在IE6~8下不兼容

//获取指定元素下的所有元素子节点

//思路:先获取所有的子节点,然后我们在把其中的元素子节点(nodeType等于1)单独的获取到

function queryChildren(curEle) {

var ary = [];//->先弄个容器用来存储我们需要的元素子节点

var allNodes = curEle.childNodes;//->获取所有的子节点

//循环遍历每一个子节点,把元素节点单独的存储到ary这个容器中

for (var i = 0; i < allNodes.length; i++) {

var cur = allNodes[i];

if (cur.nodeType === 1) {

//ary.push(cur);

ary[ary.length] = cur;

}

}

return ary;

}

//获取上一个元素哥哥节点

function prev(curEle) {

//兼容的话直接用,函数体中遇到return就不在执行了

if (curEle.previousElementSibling) {

return curEle.previousElementSibling;

}

//不兼容我们自己用while循环一级级的查找

var pre = curEle.previousSibling;

while (pre && pre.nodeType !== 1) {//->获取的节点存在并且不是元素节点,我们就一直循环向上找

pre = pre.previousSibling;

}

return pre;

}

本文网址:http://www.shaoqun.com/a/279592.html

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:admin@shaoqun.com。

0

java node子节点_[Java教程]Node节点相关推荐

  1. java创建node类型数据类型_[Java教程]js DOM Node类型

    [Java教程]js DOM Node类型 0 2015-12-18 16:00:08 DOM(文档对象模型)是针对HTML和 DOM可以将任何HTML或 以下面为例: My article Hell ...

  2. master节点重置后添加node报错_超强教程!在树莓派上构建多节点K8S集群!

    在很长一段时间里,我对于在树莓派上搭建Kubernetes集群极为感兴趣.在网络上找到一些教程并且跟着实操,我已经能够将Kubernetes安装在树莓派上,并在三个Pi集群中工作.然而,在master ...

  3. java 内存泄露 书籍_[Java教程]一次艰难的内存泄露排查,BeanUtils 的锅

    [Java教程]一次艰难的内存泄露排查,BeanUtils 的锅 0 2020-10-29 18:24:42 现象 通过jstat -gcutil pid 5000 ,发现fgc次数很多而且频繁,此时 ...

  4. java privatekey输出字符串_[Java教程]根据字符串(String)生成公钥(PublicKey)和私钥(PrivateKey)对象_星空网...

    根据字符串(String)生成公钥(PublicKey)和私钥(PrivateKey)对象 2012-05-29 0 1.字符串生成公钥对象 PublicKey /** * 实例化公钥 * * @re ...

  5. node环境变量_实际使用Node环境变量的方法如下

    node环境变量 Environment variables are a fundamental part of Node development, but for some reason I nev ...

  6. java链式结构_(Java)单链表Java语言链式结构实现(数据结构四)

    1.迭代器接口实现 package com.zhaochao; public interface Iterator { boolean hasNext(); E next(); boolean del ...

  7. node.js 模块_如何创建Node JS可重用模块

    node.js 模块 In my previous post, we have discussed about "How to export and import a Node JS Mod ...

  8. java 基础面试 英文_[Java面试] 面试java基础总结大全

    原标题:[Java面试] 面试java基础总结大全 基础知识: 1.JVM.JRE和JDK的区别: JVM(Java Virtual Machine):java虚拟机,用于保证java的跨平台的特性. ...

  9. java 历遍 类_[Java] 遍历指定包名下所有的类(支持jar) | 学步园

    项目需要,仅做记录. 支持包名下的子包名遍历,并使用Annotation(内注)来过滤一些不必要的内部类,提高命中精度. 通过Thread.currentThread().getContextClas ...

最新文章

  1. 龙尚科技的生态秘诀:品质赢得信誉 互惠促成长久合作
  2. break后面的语句还执行吗_流程控制语句
  3. 找出数组中最长的连续数字序列(JavaScript实现)
  4. mysql8中怎么增删一列_关于MySQL的增删改查知识
  5. centos 7 配置nginx
  6. Python:数组添加数据和删除数据
  7. 利用系统错误日志监控磁盘健康状况
  8. 前端学习(2479):接口文档使用
  9. 编程贺卡c语言,C++实现新年贺卡程序
  10. OJ1037: 四则运算
  11. 史上最权威的 Activiti 框架学习
  12. R.java文件无法自动生成的问题
  13. Docker 之 概念介绍
  14. vue中如何引入公共样式的的styl文件
  15. 第七周 项目4 - 队列数组
  16. juniper服务器连接显示都是网关,Juniper防火墙,LVS DR mode 与 HTTP keepalive 丢包问题追查...
  17. LoadRunner的函数全集
  18. ElasticSearch排序引起的all shards failed异常
  19. Python 导出EXCEL
  20. codewars【1】

热门文章

  1. android极光推送在app开启后,在ios上,app后台运行时,如何在极光消息推送过来时,运行一段自定义的代码(请求,语音播报等)...
  2. VINS-初始化:【翻译】Robust Initialization of Monocular Visual-Inertial Estimation on Aerial Robots
  3. Trafodion CQD-comp_bool_158
  4. ps制作gif动画方法以及有毛边问题解决
  5. Python 第三方模块 机器学习 Scikit-Learn模块 简介,基类,数据集,错误
  6. Matlab基于AIS和雷达的多传感器航迹融合
  7. antlr4 mysql_Antlr4 入门
  8. linux查看CPU个数、核数、运行模式以及是否支持超线程技术
  9. 锦佰安科技副总裁杨海青:AI行为识别身份认证助力移动金融支付安全
  10. 相册获取、相机拍摄,裁剪圆形头像