HTML DOM的nodeType值介绍


Posted in Javascript onMarch 31, 2011

nodeName、nodeValue 以及 nodeType 包含有关于节点的信息。

nodeName 属性含有某个节点的名称。

元素节点的 nodeName 是标签名称
属性节点的 nodeName 是属性名称
文本节点的 nodeName 永远是 #text
文档节点的 nodeName 永远是 #document

注释:nodeName 所包含的 XML 元素的标签名称永远是大写的

nodeValue
对于文本节点,nodeValue 属性包含文本。
对于属性节点,nodeValue 属性包含属性值。
nodeValue 属性对于文档节点和元素节点是不可用的。
nodeType
nodeType 属性可返回节点的类型。
最重要的节点类型是:

元素类型 节点类型
元素element 1
属性attr 2
文本text 3
注释comments 8
文档document 9
补充:
值-元素类型
1-ELEMENT
2-ATTRIBUTE
3-TEXT
4-CDATA
5-ENTITY REFERENCE
6-ENTITY
7-PI (processing instruction)
8-COMMENT
9-DOCUMENT
10-DOCUMENT TYPE
11-DOCUMENT FRAGMENT
12-NOTATION

HTML文件:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>DOM标准</title> 
<script type="text/javascript" src="test.js"></js> 
</head> 
<body> 
<h1 id="h1">An HTML Document</h1> 
<p id="p1">This is a <i>W3C HTML DOM</i> document.</p> 
<p><input id="btnDemo1" type="button" value="取H1 Element节点值"></p> 
<p><input id="btnDemo2" type="button" value="取H1 Element节点文本"></p> 
<p><input id="btnDemo3" type="button" value="取Document Element节点文本"></p> 
<p><input type="button" alt="这是个演示按钮" title="演示按钮提示标题" name="btnShowAttr" id="btnShowAttr" value="按钮节点演示" /></p> 
</body> 
</html>

JS:
function showElement(){ 
var element=document.getElementById("h1");//h1是一个<h1>标签 
alert('nodetype:'+element.nodeType);//nodeType=1 
alert('nodeName:'+element.nodeName); 
alert('nodeValue:'+element.nodeValue); //null 
alert('element:'+element); 
} 
function showText(){ 
var element=document.getElementById("h1"); 
var text=element.childNodes[0]; 
alert('nodeType:'+text.nodeType); //nodeType=3 
alert('nodeValue:'+text.nodeValue); //文本节点的nodeValue是其文本内容 
text.nodeValue=text.nodeValue+"abc"; //文本内容添加修改删除等等。 
alert('nodeName:'+text.nodeName); 
alert(text.data); //data同样是其内容,这个属性下同样可以增删改。 
} 
function showDocument(){ 
alert('nodeType:'+document.nodeType); //9 
alert('nodeName:'+document.nodeName); 
alert(document); 
} 
function showAttr(){ 
var btnShowAttr=document.getElementById("btnShowAttr"); //演示按钮,有很多属性 
var attrs=btnShowAttr.attributes; 
for(var i=0;i<attrs.length ;i++){ 
var attr=attrs[i]; 
alert('nodeType:'+attr.nodeType); //attribute 的nodeType=2 
alert('attr:'+attr); 
alert('attr.name:'+attr.name+'='+attr.value); 
} 
} 
function demo(){ 
var btnDemo1=document.getElementById("btnDemo1"); 
btnDemo1.onclick=showElement; //按钮1取节点nodetype值 
var btnDemo2=document.getElementById("btnDemo2"); 
btnDemo2.onclick=showText; 
var btnDemo3=document.getElementById("btnDemo3"); 
btnDemo3.onclick=showDocument; 
var btnShowAttr=document.getElementById("btnShowAttr"); 
btnShowAttr.onclick=showAttr; 
} 
window.onload=demo;
Javascript 相关文章推荐
javascript 多浏览器 事件大全
Mar 23 Javascript
jQuery 菜单随滚条改为以定位方式(固定要浏览器顶部)
May 24 Javascript
jQuery去掉字符串起始和结尾的空格(多种方法实现)
Apr 01 Javascript
原生JS实现加入收藏夹的代码
Oct 24 Javascript
js如何获取object类型里的键值
Feb 18 Javascript
jQuery实现div拖拽效果实例分析
Feb 20 Javascript
jQuery UI库中dialog对话框功能使用全解析
Apr 23 Javascript
简单的JS轮播图代码
Jul 18 Javascript
利用jQuery实现滑动开关按钮效果(附demo源码下载)
Feb 07 Javascript
Javascript实现跨域后台设置拦截的方法详解
Aug 04 Javascript
Angular模版驱动表单的使用总结
May 05 Javascript
node(koa2) web应用模块介绍详解
Mar 29 Javascript
setTimeout和setInterval的区别你真的了解吗?
Mar 31 #Javascript
Draggable Elements 元素拖拽功能实现代码
Mar 30 #Javascript
使用jQuery实现dropdownlist的联动效果(sharepoint 2007)
Mar 30 #Javascript
使用jquery为table动态添加行的实现代码
Mar 30 #Javascript
jquery 查找select ,并触发事件的实现代码
Mar 30 #Javascript
lyhucSelect基于Jquery的Select数据联动插件
Mar 29 #Javascript
基于JQuery实现异步刷新的代码(转载)
Mar 29 #Javascript
You might like
全国FM电台频率大全 - 18 湖南省
2020/03/11 无线电
php支付宝接口用法分析
2015/01/04 PHP
javascript模仿msgbox提示效果代码
2008/06/10 Javascript
tangram框架响应式加载图片方法
2013/11/21 Javascript
jQuery仿360导航页图标拖动排序效果代码分享
2015/08/24 Javascript
微信JSAPI支付操作需要注意的细节
2017/01/10 Javascript
jQuery实现选项卡功能(两种方法)
2017/03/08 Javascript
Node.js 中exports 和 module.exports 的区别
2017/03/14 Javascript
详解AngularJs ui-router 路由的简单介绍
2017/04/26 Javascript
jquery实现放大镜简洁代码(推荐)
2017/06/08 jQuery
详解javascript常用工具类的封装
2018/01/30 Javascript
JS实现键值对遍历json数组功能示例
2018/05/30 Javascript
轻松解决JavaScript定时器越走越快的问题
2019/05/13 Javascript
nuxt踩坑之Vuex状态树的模块方式使用详解
2019/09/06 Javascript
微信小程序(订阅消息)功能
2019/10/25 Javascript
Python三种遍历文件目录的方法实例代码
2018/01/19 Python
详解Python中如何写控制台进度条的整理
2018/03/07 Python
python的pandas工具包,保存.csv文件时不要表头的实例
2018/06/14 Python
Flask框架web开发之零基础入门
2018/12/10 Python
用Python读取几十万行文本数据
2018/12/24 Python
处理python中多线程与多进程中的数据共享问题
2019/07/28 Python
如何在python中写hive脚本
2019/11/08 Python
如何使用 Flask 做一个评论系统
2020/11/27 Python
新西兰第一的行李箱网站:luggage.co.nz
2019/07/22 全球购物
学校运动会开幕演讲稿
2014/01/04 职场文书
2014年高三毕业生自我评价
2014/01/11 职场文书
网上卖盒饭创业计划书
2014/01/26 职场文书
棉花姑娘教学反思
2014/02/15 职场文书
人事部经理岗位职责
2014/03/07 职场文书
学习两会精神心得范文
2014/03/17 职场文书
吨的认识教学反思
2014/04/27 职场文书
2014年安全生产责任书
2014/07/22 职场文书
2014年入党积极分子学习三中全会思想汇报
2014/09/13 职场文书
2019XX公司员工考核管理制度!
2019/08/07 职场文书
虚拟机linux端mysql数据库无法远程访问的解决办法
2021/05/26 MySQL
pytorch实现加载保存查看checkpoint文件
2022/07/15 Python