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笔记 数据的存储与访问性能优化
Aug 02 Javascript
js解析xml字符串和xml文档实现原理及代码(针对ie与火狐)
Feb 02 Javascript
用Jquery重写windows.alert方法实现思路
Apr 03 Javascript
理解JAVASCRIPT中hasOwnProperty()的作用
Jun 05 Javascript
appendChild() 或 insertBefore()使用与区别介绍
Oct 11 Javascript
jQuery插件实现控制网页元素动态居中显示
Mar 24 Javascript
jQuery简单实现上下,左右滑动的方法
Jun 01 Javascript
js带闹铃功能的倒计时代码
Sep 29 Javascript
如何判断出一个js对象是否一个dom对象
Nov 24 Javascript
解决vue更新路由router-view复用组件内容不刷新的问题
Nov 04 Javascript
vue组件中实现嵌套子组件案例
Aug 31 Javascript
解决vuex改变了state的值,但是页面没有更新的问题
Nov 12 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 采集心得技巧
2009/05/15 PHP
php+javascript的日历控件
2009/11/19 PHP
thinkphp3.2.0 setInc方法 源码全面解析
2018/01/29 PHP
PHP中16个高危函数整理
2019/09/19 PHP
js 获取(接收)地址栏参数值的方法
2013/04/01 Javascript
ExtJS中设置下拉列表框不可编辑的方法
2014/05/07 Javascript
js实现仿爱微网两级导航菜单效果代码
2015/08/31 Javascript
Ionic如何创建APP项目
2016/06/03 Javascript
JSP防止网页刷新重复提交数据的几种方法
2016/11/19 Javascript
快速实现JS图片懒加载(可视区域加载)示例代码
2017/01/04 Javascript
javascript阻止事件冒泡和浏览器的默认行为
2017/01/21 Javascript
Vue2.0实现购物车功能
2017/06/05 Javascript
微信小程序实现循环动画效果
2018/07/16 Javascript
Vuex 模块化使用详解
2019/07/31 Javascript
layui对工具条进行选择性的显示方法
2019/09/19 Javascript
three.js 如何制作魔方
2020/07/31 Javascript
在vue项目中利用popstate处理页面返回的操作介绍
2020/08/06 Javascript
[01:26]神话结束了,却也刚刚开始——DOTA2新英雄玛尔斯驾临战场
2019/03/10 DOTA
将Emacs打造成强大的Python代码编辑工具
2015/11/20 Python
Python利用IPython提高开发效率
2016/08/10 Python
Python 实现网页自动截图的示例讲解
2018/05/17 Python
django admin 后台实现三级联动的示例代码
2018/06/22 Python
PyCharm在新窗口打开项目的方法
2019/01/17 Python
Django rstful登陆认证并检查session是否过期代码实例
2019/08/13 Python
tensorflow查看ckpt各节点名称实例
2020/01/21 Python
Django 设置多环境配置文件载入问题
2020/02/25 Python
解决jupyter notebook显示不全出现框框或者乱码问题
2020/04/09 Python
Keras load_model 导入错误的解决方式
2020/06/09 Python
利用HTML5+CSS3实现3D转换效果实例详解
2017/05/02 HTML / CSS
如何让Java程序执行效率更高
2014/06/25 面试题
安全生产管理责任书
2014/04/16 职场文书
党性观念心得体会
2014/09/03 职场文书
教师师德师风个人整改方案
2014/09/18 职场文书
离婚财产处理协议书
2014/09/30 职场文书
Mysql Innodb存储引擎之索引与算法
2022/02/15 MySQL
Python数据结构之队列详解
2022/03/21 Python