javase36补充(DOM节点的层次关系 操作节点 节点增删改查)
来源:互联网 发布:js隐藏滚动条 编辑:程序博客网 时间:2024/05/29 12:29
<body><!--通过节点的层次关系获取对象关系1、父节点 parentNode对应一个节点对象2、子节点 childNode 对应一个节点集合3、兄弟节点 上一个兄弟节点 previousSibling 下一个兄弟节点 nextSibling--><script type="text/javascript">function getNodeBy(){ //获取页面中的表格节点 var tabNode = document.getElementById("tabid"); //获取父节点 parentNode //var node = tabNode.parentNode; //alert(node.nodeName);//body //获取子节点 childNodes //var node = tabNode.childNodes; //alert(node[1].childNodes[0].nodeName); //获取兄弟节点 //上一个 var node = tabNode.previousSibling; alert(node.nodeName); var node1 = tabNode.nextSibling; alert(node1.nodeName);//尽量少用兄弟节点 因为在解析的时候会出现浏览器不同 解析不一致 会解析出标签中的空白节点 凑在一起没问题 但是很难看}</script><input type="button" value="通过节点层次关系获取节点" onclick="getNodeBy()"/><table id="tabid"> <tr> <th>姓名</th> <th><a href="javascript:void(0)" onclick="sorttab()">年龄</a></th> <th>地址</th> </tr> <tr> <td>张苏纳</td> <td>11</td> <td>天堂</td> </tr> <tr> <td>小白</td> <td>14</td> <td>上号</td> </tr> <tr> <td>如果</td> <td>8</td> <td>玩玩</td> </tr> <tr> <td>是</td> <td>18</td> <td>大岸</td> </tr></table></body>
<style type="text/css"> div{ border:#009 1px solid; width:200px; padding:30px; margin:10px; } #div_1{ background-color:#0F0; } #div_2{ background-color:#AABBF0; } #div_3{ background-color:#00CCF0; } #div_4{ background-color:#00aaF0; }</style></head><body><script type="text/javascript">//创建并添加节点//在div_1节点添加一个文本节点function creatNode(){ /* 1、创建一个文本节点 2、获取div_1节点 3、将文本节点添加到div_1节点中 */ //1、创建节点 使用document中的createTextNode方法 var oTextNode = document.createTextNode("新的文本"); //2、获取div_1节点 var oDivNode = document.getElementById("div_1"); //3、将文本节点添加到div_1节点中 oDivNode.appendChild(oTextNode);}//在div_1中创建并添加一个按钮节点function createAndAdd2(){ //1、创建一个按钮节点 var oButNode = document.createElement("input"); oButNode.type="button"; oButNode.value="新按钮"; //2、获取div_1节点 var oDivNode = document.getElementById("div_1"); //3、将文本节点添加到div_1节点中 oDivNode.appendChild(oButNode);}//通过另一种方式完成添加节点function createAndAdd3(){ //其实是使用了容器型标签中的一个属性innerHTML //这个属性可以设置html文本 //、获取div_1节点 var oDivNode = document.getElementById("div_1"); //oDivNode.innerHTML="<input type='button' value='有个按钮'>";//因为是html被解析完就成为一个按钮了 oDivNode.innerHTML="<a href='www.baidu.com'>百度</a>";//单引号。关键}//将div_2节点删除function delNode(){ //1、获取div_2节点 var oDivNode = document.getElementById("div_2"); //2、使用div节点的removeNode方法删除 //oDivNode.removeNode(true);//火狐 dw没反应 ie还能用 不支持 较少用 删掉自己 //一般使用removeChild()方法删除子节点 //获取div_2的父节点 然后再用父节点的removeChild将div_2删除 oDivNode.parentNode.removeChild(oDivNode);}//用div_3节点替换div_1节点function updateNode(){ //思路 获取div_3和div_1 //使用replaceNode进行替换 var oDivNode_1 = document.getElementById("div_1"); var oDivNode_3 = document.getElementById("div_3"); //oDivNode_1.replaceNode(oDivNode_3);谋权篡位 和上一个都是从文档层次 建议从元素层次 //建议使用replaceChild方法 oDivNode_1.parentNode.replaceChild(oDivNode_3,oDivNode_1); //下网用div_3替换div_1 并保留div_3节点 //其实就是对div_3进行克隆} function cloneDemo() { var oDivNode_1 = document.getElementById("div_1"); var oDivNode_3 = document.getElementById("div_3"); var oCopyDiv_3 = oDivNode_3.cloneNode(true);//true就带一家人一起复制 默认false只有壳 //alert(oCopyDiv_3.nodeName); oDivNode_1.parentNode.replaceChild(oCopyDiv_3,oDivNode_1); } </script><input type="button" value="创建并添加节点" onclick="createAndAdd3()" /><input type="button" value="删除节点" onclick="delNode()" /><input type="button" value="更新节点" onclick="updateNode()" /><input type="button" value="克隆节点" onclick="cloneDemo()" /><div id="div_1">如果</div><div id="div_2">有一天</div><div id="div_3">在人间</div><div id="div_4">和平</div></body>
阅读全文
0 0
- javase36补充(DOM节点的层次关系 操作节点 节点增删改查)
- (5)通过节点的层次关系获取节点对象:增删改查节点
- HTML DOM节点的增删改查
- HTML DOM节点的增删改查
- java DOM 对xml文件的操作【分别对节点、节点属性、节点内容增删改查】
- 节点的增删改查
- 节点的增删改查
- jquery 增删改查dom节点
- html dom节点增删改查
- HTML DOM(二):节点的增删改查
- Dom-对节点的增删改查,替换
- 网页编程--DOM之节点的增删改查
- JavaScript---网络编程(7)-Dom模型(节点间的层次关系,节点的增、删、改)
- DOM 节点属性,增删改节点属性
- JavaWeb_01_Dom4j操作节点元素和属性的增删改查
- jquery的tree增删改查节点操作
- jQuery节点的增删改查
- 【JavaScript】网页节点的增删改查
- JMeter分布式部署精要
- leetcode 28. Implement strStr()
- nyoj27 水池数目(bfs)
- Linux学习(二)
- addEventListener和attachEvent
- javase36补充(DOM节点的层次关系 操作节点 节点增删改查)
- Data Table -------变量值在action之间传递
- Java高新技术第二篇:反射技术
- Codeforces 430 Div 2 C.Ilya And The tree
- SSM框架引入logback日志框架
- 学习dubbo(二) 配置文件详解
- composer 安装laravel 框架
- Java版的webdriver 模拟登陆功能
- 多路归并排序的实现