DOM----nodeType,nodeName,nodeValue笔记
2015-11-29 14:17
711 查看
这两天认真系统的看DOM,看到nodeType,nodeName和nodeValue的知识,所以归纳整理一下,有错误请大家指出
。
首先是关于节点类型(nodeType)与对应的数值常量(可以判断节点的类型):
Element,元素节点,例如html的各个标签,head、body、div等等,对应的数值常量为1,nodeValue值为null;
Attr,属性节点,例如div的属性,id、class等,对应的数值常量为2;
Text,文本节点,nodeName值为#text,对应的数值常量为3;
Comment,注释节点,指<!-- -->中的内容,nodeName值为#comment,对应的数值常量为8;
Document,文档节点,在网页中指整个html文档,一般包括文档类型节点<!doctype html>和元素节点html,对应的数值常量为9;
DocumentType,文档类型节点,nodeName值为doctype的名称,例如html,对应的数值常量为10,nodeValue为null;
DocumentFragment,文档片段节点,nodeName值为#document-fragment,对应的数值常量为11,nodeValue为null。
nodeName,获取节点的名字,nodeValue,获取节点的值。
简单的例子:
<script>
window.onload=function(){
var boxdiv=document.getElementById("box");
if(boxdiv.nodeType == 1){
console.log("this is a elementnode!");
}
var attrnode=boxdiv.attributes[0];
comsole.log(attrnode.nodeName+"/"+attrnode.nodeValue);
}
</script>
<body>
<div id="box"></div>
</body>
(ps:attributes获取的是属性对象的集合,而getAttribute()是获取某个属性的值,setAttribute()是设置某个属性的值。)
。
首先是关于节点类型(nodeType)与对应的数值常量(可以判断节点的类型):
Element,元素节点,例如html的各个标签,head、body、div等等,对应的数值常量为1,nodeValue值为null;
Attr,属性节点,例如div的属性,id、class等,对应的数值常量为2;
Text,文本节点,nodeName值为#text,对应的数值常量为3;
Comment,注释节点,指<!-- -->中的内容,nodeName值为#comment,对应的数值常量为8;
Document,文档节点,在网页中指整个html文档,一般包括文档类型节点<!doctype html>和元素节点html,对应的数值常量为9;
DocumentType,文档类型节点,nodeName值为doctype的名称,例如html,对应的数值常量为10,nodeValue为null;
DocumentFragment,文档片段节点,nodeName值为#document-fragment,对应的数值常量为11,nodeValue为null。
nodeName,获取节点的名字,nodeValue,获取节点的值。
简单的例子:
<script>
window.onload=function(){
var boxdiv=document.getElementById("box");
if(boxdiv.nodeType == 1){
console.log("this is a elementnode!");
}
var attrnode=boxdiv.attributes[0];
comsole.log(attrnode.nodeName+"/"+attrnode.nodeValue);
}
</script>
<body>
<div id="box"></div>
</body>
(ps:attributes获取的是属性对象的集合,而getAttribute()是获取某个属性的值,setAttribute()是设置某个属性的值。)
相关文章推荐
- JQuery1——基础($对象,选择器,对象转换)
- Android学习笔记(二九):嵌入浏览器
- Android java 与 javascript互访(相互调用)的方法例子
- JavaScript演示排序算法
- javascript实现10进制转为N进制数
- 在Windows 8.1的IE 11中屏蔽双击放大功能
- 2019年开发人员应该学习的8个JavaScript框架
- HTML中的script标签研究
- 对一个分号引发的错误研究
- 异步流程控制:7 行代码学会 co 模块
- ES6 走马观花(ECMAScript2015 新特性)
- JavaScript拆分字符串时产生空字符的原因
- Canvas 在高清屏下绘制图片变模糊的解决方法
- JavaScript 各种遍历方式详解
- call/apply/bind 的理解与实例分享
- 如何创建对象以及jQuery中创建对象的方式