DOM对象控制HTML无素——详解2

节点属性

在文档对象模型 (DOM) 中,每个节点都是一个对象。DOM 节点有三个重要的属性 :

1. nodeName : 节点的名称

2. nodeValue :节点的值

3. nodeType :节点的类型

一、nodeName 属性: 节点的名称,是只读的。

1. 元素节点的 nodeName 与标签名相同
2. 属性节点的 nodeName 是属性的名称
3. 文本节点的 nodeName 永远是 #text
4. 文档节点的 nodeName 永远是 #document

二、nodeValue 属性:节点的值

1. 元素节点的 nodeValue 是 undefined 或 null
2. 文本节点的 nodeValue 是文本自身
3. 属性节点的 nodeValue 是属性的值

三、nodeType 属性: 节点的类型,是只读的。以下常用的几种结点类型:

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

访问子结点childNodes

访问选定元素节点下的所有子节点的列表,返回的值可以看作是一个数组,他具有length属性。

语法:

elementNode.childNodes

注意:

如果选定的节点没有子节点,则该属性返回不包含节点的 NodeList。

 1 <body>
 2     <ul>
 3         <li>javascript</li>
 4         <li>jquery</li>
 5         <li>html5</li>
 6     </ul>
 7     <script>
 8         var childNode = document.getElementsByTagName("ul")[0].childNodes
 9         document.write("ul子节点的长度"+childNode.length+"</br>") //=>7
10         document.write("ul第一个子节点的类型"+childNode[0].nodeType)//=>3
11     </script>
12 </body>

IE:

  UL子节点个数:3
  节点类型:1

其它浏览器:

   UL子节点个数:7
   节点类型:3

注意:

1. IE全系列、firefox、chrome、opera、safari兼容问题

2. 节点之间的空白符,在firefox、chrome、opera、safari浏览器是文本节点,所以IE是3,其它浏览器是7

访问子结点的第一和最后项

一、firstChild 属性返回‘childNodes’数组的第一个子节点。如果选定的节点没有子节点,则该属性返回 NULL。

语法:

node.firstChild

说明:与elementNode.childNodes[0]是同样的效果。

二、 lastChild 属性返回‘childNodes’数组的最后一个子节点。如果选定的节点没有子节点,则该属性返回 NULL。

语法:

node.lastChild

说明:与elementNode.childNodes[elementNode.childNodes.length-1]是同样的效果。

 1 <body>
 2     <ul>
 3         <li>javascript</li>
 4         <li>jquery</li>
 5         <li>html5</li>
 6     </ul>
 7     <script>
 8         var ul = document.getElementsByTagName("ul")[0]
 9         var firstChild = ul.firstChild.nodeType
10         var lastChild = ul.lastChild.nodeName
11         document.write(firstChild+" "+lastChild)  //=>3   ,    #test
12     </script>
13 </body>
时间: 2025-01-01 14:00:37

DOM对象控制HTML无素——详解2的相关文章

DOM对象控制HTML无素——详解3

创建元素节点createElement createElement()方法可创建元素节点.此方法可返回一个 Element 对象. 语法: document.createElement(tagName) 参数: tagName:字符串值,这个字符串用来指明创建元素的类型. 1 <script> 2 var createElement = document.createElement('p') //创建了一个P标签的元素 3 </script> 插入 创建文本节点createText

DOM对象控制HTML无素——详解1

getElementsByName()方法 返回带有指定名称的节点对象的集合. 语法: document.getElementsByName(name) 与getElementById() 方法不同的是,通过元素的 name 属性查询元素,而不是通过 id 属性. 注意: 1. 因为文档中的 name 属性可能不唯一,所有 getElementsByName() 方法返回的是元素的数组,而不是一个元素. 2. 和数组类似也有length属性,可以和访问数组一样的方法来访问,从0开始. 1 <bo

C#依赖注入控制反转IOC实现详解

原文:C#依赖注入控制反转IOC实现详解 IOC的基本概念是:不创建对象,但是描述创建它们的方式.在代码中不直接与对象和服务连接,但在配置文件中描述哪一个组件需要哪一项服务.容器负责将这些联系在一起. 举个例子,组件A中有类ClassA,组件B中有接口IB和其对应的实现类B1和B2. 那么,现在ClassA需要利用IB接口来做一些事情,例如: public class ClassA { public void DoSomething() { IB b = ??? b.DoWork(); }} 现

JS中获取 DOM 元素的绝对位置实例详解

在操作页面滚动和动画时经常会获取 DOM 元素的绝对位置,例如 本文 左侧的悬浮导航,当页面滚动到它以前会正常地渲染到文档流中,当页面滚动超过了它的位置,就会始终悬浮在左侧. 本文会详述各种获取 DOM 元素绝对位置 的方法以及对应的兼容性.关于如何获取 DOM 元素高度和滚动高度,请参考视口的宽高与滚动高度 一文. 概述 这些是本文涉及的 API 对应的文档和标准,供查阅: API 用途 文档 标准 offsetTop 相对定位容器的位置 MDN CSSOM View Module clien

JS总结之二:DOM对象控制HTML

DOM对象控制HTML 1.方法 getElementsByName( ) ——获取name getElementsByTagName( ) ——获取元素 getAttribute( ) ——获取元素属性 setAttribute( ) ——设置元素属性 childNodes( ) ——访问子节点 parentNode( ) ——访问父节点 createElement( ) ——创建元素节点 createTextNode( ) ——创建文本节点 inserBefore( ) ——插入节点 rem

DOM对象控制HTML

DOM对象将HTML文档变成元素,属性,文本的树结构. 元素节点:标签一般就是元素. 属性节点:a标签中加入的超链接href就是属性. 文本节点:一般是展示给用户看的<p>标签内的文字,table表格中<tr>中的文字,ul中<li>的文字. 节点属性: document.getElementById("xxx");这时获取id为xxx的元素节点.因为id的名称是一定的,唯一标识不会重复.所以获取的元素节点是一个单独的量. document.getE

Javascript DOM对象控制HTML

首先需要了解什么是 JavaScript DOM对象以下是一些常用的方法: <!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title></title></head><body>    <p name="pName">one</p>    &

log4j日志输出到日志文件中和控制台中 +log4j配置详解

1.引入log4j的jar包 https://mvnrepository.com/,可以找到log4j的jar和依赖. 2.创建log4j.properties,并配置log4j #设置日志的级别 ,多个以,分开(没有给出的,则不会被输出) log4j.rootLogger=debug,A,R # log4j.appender.logfile.encoding=UTF-8 #DailyRollingFileAppender每天产生一个日志文件 log4j.appender.R=org.apach

javascript DOM对象控制HTML元素详解

方法 getElementsByName()                   获取name getElementsByTagName()              获取元素 getAttribute()                                获取元素属性 setAttribute()                                设置元素属性 childNodes()                                  访问子节点 par