nodeName学习
1.nodeName属性 : 节点的名字。
如果节点是元素节点,那么返回这个元素的名字。此时,相当于tagName属性。
比如:
<p>aaaa</p> : 则返回 p ;
如果是属性节点,nodeName将返回这个属性的名字。
如果是文本节点,nodeName将返回一个#text的字符串。
另外我要说的是: nodeName属性是一个只读属性,不能进行设置.(写)
注意: 它返回 大写字母的值。
2.nodeType属性 : 返回一个整数,代表这个节点的类型。
我们常用的3中类型:
nodeType == 1 : 元素节点
nodeType == 2 : 属性节点
nodeType == 3 : 文本节点
如果想记住的话,我们可以这么去记:
比如: <p title="cssrain" >test</p> 从前往后读: 你会发现 先是元素节点(1),然后是属性节点(2),最后是文本节点(3),这样你就很容易记住了 nodeType分别代表什么类型了。(我总结的一点小技巧, ^_^。)
nodeType属性经常跟 if 配合使用,以确保不会在错误的节点类型上 执行错误的操作。
比如:
function cs_demo(mynode){if(mynode.nodeType == 1){mynode.setAttribute("title","demo");}
}
代码解释: 先检查mynode的nodeType属性,以确保它所代表的节点确实是 一个元素节点。
和nodeName属性一样,他也是只读属性,不能进行设置.(写)。
3.nodeValue属性 : 返回一个字符串,这个节点的值。
如果节点是元素节点,那么返回null;(注意下)
如果是属性节点,nodeValue将返回这个属性的值。
如果是文本节点,nodeValue将返回这个文本节点的内容。
比如:
<div id="c">aaaaaaaaaaaaaaaa</div>
<script language="JavaScript">var c= document.getElementById("c");alert( c.nodeValue );//返回null
</script>
nodeValue是一个可以读、写的属性。 但它不能设置元素节点的值。
再看看下面的例子:
<div id="c">aaaaaaaaaaaaaaaa</div>
<script language="JavaScript">var c= document.getElementById("c");c.nodeValue =" dddddddddddd"; //不能设置//alert( c.firstChild.nodeValue ) //元素节点 包括属性节点和文本节点。c.firstChild.nodeValue = "test"//能设置
</script>
当然我们为了确保能正确运行:可以加一段代码:
<div id="c">aaaaaaaaaaaaaaaa</div>
<script LANGUAGE="JavaScript">var c= document.getElementById("c");c.nodeValue =" dddddddddddd"; //不能设置//alert( c.firstChild.nodeValue )if( c.firstChild.nodeType==3 ){ //判断是不是 文本节点c.firstChild.nodeValue = "test"//能设置}
</script>
//可以看出,如果要设置元素节点,不能直接设置,而必须先使用firstChild或者lastChild等 然后设置nodeValue.
nodeValue一般只用来设置 文本节点的值。如果要刷新属性节点的值,一般使用setAttribute().
nodeName学习相关推荐
- 【Python爬虫学习笔记4】结合Xpath与lxml库解析数据
在之前的学习中了解了如何使用爬虫向目标服务器发送请求并获取响应,而此后便是要对响应进行处理,这里的处理在爬虫中通常指的是数据解析,即将相应内容数据化以方便我们进行有效数据的提取.在此过程中,有许多解析 ...
- JavaScript学习总结(一)——ECMAScript、BOM、DOM(核心、浏览器对象模型与文档对象模型)...
一.JavaScript简介 JavaScript是一种解释执行的脚本语言,是一种动态类型.弱类型.基于原型的语言,内置支持类型,它遵循ECMAScript标准.它的解释器被称为JavaScript引 ...
- 从零开始学习jQuery (五) 事件与事件对象【转】
一.摘要 事件是脚本编程的灵魂. 所以本章内容也是jQuery学习的重点. 本文将对jQuery中的事件处理以及事件对象进行详细的讲解. 二.前言 本篇文章是至今为止本系列内容最多的一篇, 足以可见其 ...
- Python学习笔记(六)
1. IO编程 1.1 文件读写 1.2 StringIO和BytesIO 1.3 操作文件和目录 1.4 序列化 2. 进程和线程 2.1 多进程 2.2 多线程 2.3 ThreadLocal 2 ...
- 嵌入式Linux学习1——Linux常用指令1
写在前面: Linux本系列的所有学习内容都是我在购买"正点原子Alpha Linux开发板"后,根据官方提供的资料 整理而来.后面将不再做介绍. 目录 ls:用于显示当前目录 ...
- 爬虫学习笔记(五)——网页解析工具(bs4、xpath)
一.BS4 1.1.前沿 BeautifulSoup 是一个可以从HTML或XML文件中提取数据的Python库,它的使用方式相对于正则来说更加的简单方便,常常能够节省我们大量的时间.(我这里只是简单 ...
- 从零开始学习jQuery (五) 事件与事件对象
本系列文章导航 从零开始学习jQuery (一) 开天辟地入门篇 从零开始学习jQuery (二) 万能的选择器 从零开始学习jQuery (三) 管理jQuery包装集 从零开始学习jQuery ( ...
- Python学习笔记:IO编程StringIO和BytesIO
前言 最近在学习深度学习,已经跑出了几个模型,但Pyhton的基础不够扎实,因此,开始补习Python了,大家都推荐廖雪峰的课程,因此,开始了学习,但光学有没有用,还要和大家讨论一下,因此,写下这些帖 ...
- UNIX再学习 -- 系统数据文件和信息
UNIX 系统的正常运作需要使用大量与系统有关的数据文件,例如,口令文件 /etc/passwd 和组文件 /ect/group 就是经常被多个程序频繁使用的两个文件.用户每次登陆 UNIX 系统,以 ...
最新文章
- 循环神经网络(recurrent neural network)(RNN)
- iOS:自己写的一个星级评价的小Demo
- 爱因斯坦牛顿达尔文投胎中国后
- 枚举类型是怎样定义的?有什么用途?_新型合金材料——什么是液态金属、液态金属的定义、发展以及用途...
- 寒假集训【1.26】
- SpringAMQP--FanoutExchange
- SAP Spartacus organization unit list的实现Component
- 获取文件的MIME类型
- java怎么让遮罩层下面滚动_vue项目弹出层后禁止body底层的滚动事件
- flask连接mysql数据库_Flask与Mysql数据库建立连接
- linux htdocs目录下,ubuntu解决htdocs目录的权限问题
- js JSON转Excel并导出
- 淘宝美工设计师细说何为天猫透明背景
- python基础函数应用_python基础之函数的应用
- Qt中使用SQLite
- go TCP 粘包原理和解决方案
- 金仓数据库-java连接金仓数据库方法笔记
- ant-vue中的a-icon使用方法
- 兰燕-杨平平的需求建议
- [转载] linux程序后台挂起demo——nohup