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 相关文章推荐
实现连缀调用的map方法(prototype)
Aug 05 Javascript
JavaScript中自定义事件用法分析
Dec 23 Javascript
JavaScript中的replace()方法使用详解
Jun 06 Javascript
简单实现js间歇或无缝滚动效果
Jun 29 Javascript
js智能获取浏览器版本UA信息的方法
Aug 08 Javascript
原生js实现鼠标跟随效果
Feb 28 Javascript
Jquery+Ajax+xml实现中国地区选择三级联动菜单效果(推荐)
Jun 09 jQuery
基于JavaScript实现新增内容滚动播放效果附完整代码
Aug 24 Javascript
深入研究React中setState源码
Nov 17 Javascript
Koa 中的错误处理解析
Apr 09 Javascript
原生js代码能实现call和bind吗
Jul 31 Javascript
Vue中的transition封装组件的实现方法
Aug 13 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
ThinkPHP有变量的where条件分页实例
2014/11/03 PHP
详谈PHP编码转换问题
2015/07/28 PHP
thinkPHP框架实现类似java过滤器的简单方法示例
2018/09/05 PHP
简单实用的js调试logger组件实现代码
2010/11/20 Javascript
jquery键盘事件介绍
2011/01/31 Javascript
判断用户是否在线的代码
2011/03/05 Javascript
IE8对JS通过属性和数组遍历解析不一样的地方探讨
2013/05/06 Javascript
jquery实现图片滚动效果的简单实例
2013/11/23 Javascript
jQuery实现监控页面所有ajax请求的方法
2015/12/10 Javascript
分享网页检测摇一摇实例代码
2016/01/14 Javascript
JS实现简单的二维矩阵乘积运算
2016/01/26 Javascript
点击按钮出现60秒倒计时的简单js代码(推荐)
2016/06/07 Javascript
折叠菜单及选择器的运用
2017/02/03 Javascript
Angular 2 利用Router事件和Title实现动态页面标题的方法
2017/08/23 Javascript
js对象属性名驼峰式转下划线的实例代码
2020/09/17 Javascript
详解Vue的异步更新实现原理
2020/12/22 Vue.js
[01:08]DOTA2次级职业联赛 - Wings 战队宣传片
2014/12/01 DOTA
[01:30:15]DOTA2-DPC中国联赛 正赛 Ehome vs Aster BO3 第二场 2月2日
2021/03/11 DOTA
pycharm 使用心得(一)安装和首次使用
2014/06/05 Python
Python处理字符串之isspace()方法的使用
2015/05/19 Python
简介Django框架中可使用的各类缓存
2015/07/23 Python
深入浅析ImageMagick命令执行漏洞
2016/10/11 Python
python3.x实现发送邮件功能
2018/05/22 Python
Tensorflow进行多维矩阵的拆分与拼接实例
2020/02/07 Python
Python交互环境下打印和输入函数的实例内容
2020/02/16 Python
python 利用panda 实现列联表(交叉表)
2021/02/06 Python
美国杂志订阅折扣与优惠网站:Magazines.com
2016/08/31 全球购物
中科软测试工程师面试题
2012/06/16 面试题
生物化工专业个人自荐信
2013/09/26 职场文书
本科毕业生求职自荐信
2014/02/03 职场文书
药剂专业自荐信范文
2014/04/16 职场文书
2015年教研工作总结
2015/05/23 职场文书
2016年大学生社会实践心得体会
2015/10/09 职场文书
初中思想品德教学反思
2016/02/24 职场文书
nginx对http请求处理的各个阶段详析
2021/03/31 Servers
TV动画《神废柴☆偶像》公布先导PV
2022/03/20 日漫