DOM下的节点属性和操作小结


Posted in Javascript onMay 14, 2009

属性:
1 .nodeName
节点名称,相当于tagName.属性节点返回属性名,文本节点返回#text。nodeName,是只读的。
2 .nodeType
值:1,元素节点;2,属性节点;3,文本节点。nodeType是只读的。
3 .nodeValue
返回一个字符串,指示这个节点的值。元素节点返回null,属性节点返回属性值,文本节点返回文本。nodeValue可读可写,这是对元素节点不能写。一般只用于设置文本节点的值。
4 .childNodes
返回子节点数组。文本和属性节点的childNodes永远是null。可以用hasChildNodes()来判断是否有子节点。只读属性,要删除添加节点可不能用操作childNodes数组的办法呃。
5 .firstChild
返回第一个子节点。文本和属性节点没有子节点,会返回一个空数组,这是针对这二位的特殊待遇。对于元素节点,若是没有子节点会返回null.有一个等价式:firstChild=childNodes[0].
6 .lastChild
返回最后一个子节点。返回值同firstChild,三方待遇参考上面。有一个等价式:lastChide=childNodes[childNodes.length-1].
7 .nextSibling()
返回节点的下一个兄弟节点。如果没有下一个兄弟节点的话,返回null。只读属性,不可以更改应用。
8 .previousSibling()
返回节点的上一个兄弟节点。同上。
9 .parentNode()
返回节点的父节点。document.parentNode()返回null,其他的情况下都将返回一个元素节点,因为只有元素节点拥有子节点,出了document外任何节点都拥有父节点。parentNode(),又是一个只读的家伙。

操作:
1. 创建节点
createElement('tagName');
如:var oP=document.createElement('p');创建了一个<p></p>标签。
2. 创建文本节点
createTextNode('text');
如:var oText=document.createTextNode('This is a paragh!');
3. 附加子节点
appendChild(o);其中o为节点对象。
如:document.body.appendChildNode(o);在body末尾追加
document.forms[0].appendChildNode(o);在form表单末尾追加
oP.appendChildNode(o);在元素内部的末尾追加,其总oP为节点对象。
4. 创建文档片断
createDocumentFragment();
如:var oF=document.createDocumentFragment();
5. 删除节点
removeChild(oP);
如:document.body.removeChild(oP),从body中移除oP节点对象。
6. 替换节点
replaceChid(newOp,targetOp);将目标节点targetOp替换为newOp
如:document.body.replayChild(oPa,oPb).ps:怎会这样特殊?源和目地操作数都是参数,为何调用者是document.body?记住先,别多管。——被替换的必须是body的子节点,可以用其他element替代document.body,前提一样,被替换的要是这个element的子节点。
7. 插入节点
insertBefor(newOp,targetOp);
insertAfter(newOp,targetOp);
8. 设置或得到属性节点
setAttribute('key','value');
getAttribute('key','value')
9.复制节点。
cloneNode(true/false)

Javascript 相关文章推荐
javascript算法题 求任意一个1-9位不重复的N位数在该组合中的大小排列序号
Jul 21 Javascript
单击按钮显示隐藏子菜单经典案例
Jan 04 Javascript
jquery如何改变html标签的样式(两种实现方法)
Jan 16 Javascript
一行命令搞定node.js 版本升级
Jul 20 Javascript
javascript引用类型指针的工作方式
Apr 13 Javascript
jQuery EasyUI基础教程之EasyUI常用组件(推荐)
Jul 15 Javascript
JavaScript实现自动跳转文本功能
May 25 Javascript
详解webpack-dev-server使用方法
Sep 14 Javascript
实例讲解JavaScript截取字符串
Nov 30 Javascript
详解vue的双向绑定原理及实现
May 05 Javascript
微信小程序实现录音时的麦克风动画效果实例
May 18 Javascript
js抽奖转盘实现方法分析
May 16 Javascript
JQuery textlimit 显示用户输入的字符数 限制用户输入的字符数
May 14 #Javascript
JavaScript 动态将数字金额转化为中文大写金额
May 14 #Javascript
JS面向对象、prototype、call()、apply()
May 14 #Javascript
JavaScript Date对象使用总结
May 14 #Javascript
jQuery 技巧大全(新手入门篇)
May 12 #Javascript
JS 字符串连接[性能比较]
May 10 #Javascript
javascript获取当前ip的代码
May 10 #Javascript
You might like
php preg_filter执行一个正则表达式搜索和替换
2012/02/27 PHP
PHP 杂谈《重构-改善既有代码的设计》之五 简化函数调用
2012/05/07 PHP
用PHP即时捕捉PHP中的错误并发送email通知的实现代码
2013/01/19 PHP
PHP 二维数组根据某个字段排序的具体实现
2014/06/03 PHP
PHP实现HTML生成PDF文件的方法
2014/11/07 PHP
PHP实现百度人脸识别
2019/05/06 PHP
Prototype使用指南之base.js
2007/01/10 Javascript
Convert Seconds To Hours
2007/06/16 Javascript
ImageZoom 图片放大镜效果(多功能扩展篇)
2010/04/14 Javascript
javascript中的一些注意事项 更新中
2010/12/06 Javascript
使用Grunt.js管理你项目的应用说明
2013/04/24 Javascript
javascript计算星座属相(十二生肖属相)示例代码
2014/01/09 Javascript
在myeclipse中如何加入jquery代码提示功能
2014/06/03 Javascript
javascript原生和jquery库实现iframe自适应高度和宽度
2014/07/18 Javascript
简介JavaScript中POSITIVE_INFINITY值的使用
2015/06/05 Javascript
jquery实现的代替传统checkbox样式插件
2015/06/19 Javascript
Jquery基础之事件操作详解
2016/06/14 Javascript
vue2.0中goods选购栏滚动算法的实现代码
2017/05/17 Javascript
vue中的scope使用详解
2017/10/29 Javascript
webpack 单独打包指定JS文件的方法
2018/02/22 Javascript
Vue+Mock.js模拟登录和表格的增删改查功能
2018/07/26 Javascript
JS+Canvas实现五子棋游戏
2020/08/26 Javascript
Echarts.js无法引入问题解决方案
2020/10/30 Javascript
Python实现树莓派WiFi断线自动重连的实例代码
2017/03/16 Python
解决Mac下使用python的坑
2019/08/13 Python
详解python如何引用包package
2020/06/07 Python
html5应用缓存_动力节点Java学院整理
2017/07/13 HTML / CSS
美国购买舞会礼服网站:Couture Candy
2019/12/29 全球购物
怎样自定义一个异常类
2016/09/27 面试题
中医专业职业生涯规划书范文
2014/01/04 职场文书
给实习单位的感谢信
2014/02/01 职场文书
优秀士兵先进事迹
2014/02/06 职场文书
菜篮子工程实施方案
2014/03/08 职场文书
汤姆叔叔的小屋读书笔记
2015/06/30 职场文书
使用pandas或numpy处理数据中的空值(np.isnan()/pd.isnull())
2021/05/14 Python
2021年最新用于图像处理的Python库总结
2021/06/15 Python