- 浏览: 467377 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (272)
- java基础 (59)
- struts (8)
- spring (8)
- 数据库 (8)
- java 网络编程 (29)
- hibernate (3)
- JavaScript (10)
- 日志管理 (2)
- jsp (4)
- servlet (7)
- xml (4)
- ajax (2)
- web service (4)
- 算法与数据结构 (13)
- java 反射机制 (11)
- java 泛型 (3)
- java I/O (8)
- java 线程 (12)
- JavaEE (6)
- java解惑 (33)
- 工具 (5)
- MyEclipse编程实践 (1)
- OSGI (2)
- 设计模式 (9)
- 正则表达式 (0)
- EJB (3)
- Ubuntu linux (6)
- Android (1)
- web前端 (2)
- 找工作 (1)
- SCA (1)
- maven (1)
- 缓存 (1)
- json (1)
- javamail (1)
- 工作笔记 (2)
最新评论
-
霜花似雪:
博主可以分享一下源码吗?
使用maven构建web项目实例 -
王庆波-行:
很好的demo!
memcache使用实例 -
surpassno:
大写的牛逼
java可视化显示内存使用情况 -
zhulin0504:
怎么访问NetEcho.html页面呀???
applet与servlet的网络通信 -
springdata:
java多线程实例demo源代码下载:http://www.z ...
java多线程例子
dom节点操作
克隆节点
创建节点,增加节点
在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>cloneNode demo</title> <script type="text/javascript"> function clone() { var p = document.body.getElementsByTagName('p')[0]; var newNode = p.cloneNode(false); document.getElementById('containter').appendChild(newNode); } function cloneWithChildNodes() { var p = document.body.getElementsByTagName('p')[0]; var newNode = p.cloneNode(true); document.getElementById('containter').appendChild(newNode); } </script> <style type="text/css"> p { line-height:20px; background-color:#ff0; height:20px; width:400px; } </style> </head> <body> <h1>cloneNode demo</h1> <div id="containter"> <p>JavaScript cloneChild function demo</p> </div> <input type="button" value="clone node without child nodes" onclick="clone();" /> <input type="button" value="clone node with child nodes" onclick="cloneWithChildNodes();" /> </body> </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>create & add node demo</title> <style type="text/css"> * { margin:0; padding:0; } html { background-color:#eee; height:100%; } body { padding:15px; font-size:11px; width:500px; background-color:#fff; height:100%; font-family:Tahoma; border-left:20px solid #ccc; } ul { list-style:none; border-top:1px solid #999; height:350px; overflow-x:auto; overflow-y:scroll; } span { font-weight:bold; font-size:12px; } li { border-bottom:1px dashed #666; line-height:20px; } form { margin-top:10px; border-top:1px solid #999; } label { display:block; line-height:20px; font-weight:bold; cursor:pointer; background-color:#999; color:#fff; margin:3px 0; padding-left:5px; width:100%; } #txtName , #txtContent { width:100%; font-size:11px; } #btnSubmit { display:block; margin-top:3px; border:1px solid #666; padding:2px 5px; width:100%; } </style> <script type="text/javascript"> function submitMsg() { var name = document.getElementById('txtName').value; //取得name值 var content = document.getElementById('txtContent').value; //取得message值 var span = document.createElement('span'); //创建span节点 var nameText = document.createTextNode(name); //创建文本节点,文本值为name值 span.appendChild(nameText); //将文本节点添加到span节点中 var p = document.createElement('p'); //创建p节点 var contentText = document.createTextNode(content); //创建文本节点,文本值为message值 p.appendChild(contentText); //将文本节点添加到p节点中 var li = document.createElement('li'); //创建li节点 li.appendChild(span); //将span节点添加到li节点中 li.appendChild(p); //将p节点添加到li节点中 document.getElementById('msgList').appendChild(li); //将li节点添加到msgList节点中 } </script> </head> <body> <h1>Guest Book</h1> <ul id="msgList"> <li> <span>Robin Chen</span> <p>Welcome,My friends.</p> </li> </ul> <form name="fmMsg" id="fmMsg" action="?" method="post"> <h2>Message</h2> <label for="txtName">name</label> <input name="txtName" type="text" id="txtName" value="guest" onfocus="this.select();" /> <label for="txtContent">Message</label> <textarea name="txtContent" rows="4" id="txtContent" onfocus="this.select();">something to say...</textarea> <input type="button" value="Click here to submit your message!" id="btnSubmit" onclick="submitMsg();" /> </form> </body> </html>
在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>insertBefore demo</title> <script type="text/javascript"> function addNode() { var pos = parseInt(document.getElementById('txtPos').value) || 0; var li = document.createElement('li'); var text = document.createTextNode('new node'); li.appendChild(text); li.style.backgroundColor = '#ff0'; //新节点背景色为黄色 var ul = document.getElementById('parent'); var lis = ul.getElementsByTagName('li'); if(pos >= lis.length) { alert('error index'); return; } ul.insertBefore(li,lis[pos]); //在lis[pos]节点前插入新节点li } </script> </head> <body> <ul id="parent"> <li>child node</li> <li>child node</li> <li>child node</li> <li>child node</li> <li>child node</li> <li>child node</li> <li>child node</li> <li>child node</li> <li>child node</li> </ul> <label for="txtPos">node position:</label> <input type="text" id="txtPos" /> <input type="button" value="add" onclick="addNode();" /> </body> </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>removeChild demo</title> <style type="text/css"> * { margin:0; padding:0; } body { font-size:12px; font-family:Tahoma; padding-left:20px; } ul { list-style:none; border:1px solid #666; background-color:#eee; width:400px; padding:10px; margin:10px 0; } li { width:100%; border-bottom:1px dashed #666; padding:5px 0; } .btn { float:right; } </style> <script type="text/javascript"> /* * 删除选中的节点 */ function deleteSelectedItems() { var cbs = document.getElementsByName('cb'); var list = document.getElementById('list'); var lis = list.getElementsByTagName('li'); var deletetItems = []; //需要删除的节点的集合 for(var i = 0; i < cbs.length; i ++) { /* * 如果li中的checkbox被选中,则将该li节点加入到deleteItems数组中 */ if(cbs[i].checked) { deletetItems.push(lis[i]); } } for(var i = 0; i < deletetItems.length; i ++) { list.removeChild(deletetItems[i]); //删除节点 } } /* * 在document的click事件中判断是否点击了li中的按钮,并删除li元素 */ document.onclick = function(e) { var evt = arguments[0] || event; var elm = evt.target || evt.srcElement; if(elm.type == 'button' && elm.className == 'btn') { var li = elm.parentNode; li.parentNode.removeChild(li); } } </script> </head> <body> <h1>removeChild demo</h1> <ul id="list"> <li> <input type="button" value="delete" class="btn" /> <input type="checkbox" name="cb" /> <span>Wildfires May Bring Other Hardships</span> </li> <li> <input type="button" value="delete" class="btn" /> <input type="checkbox" name="cb" /> <span>Sentence in Teen Sex Case Ruled Illegal</span> </li> <li> <input type="button" value="delete" class="btn" /> <input type="checkbox" name="cb" /> <span>What's the Biggest Shocker of the Week?</span> </li> <li> <input type="button" value="delete" class="btn" /> <input type="checkbox" name="cb" /> <span>Spears Custody Case Closed to Media</span> </li> <li> <input type="button" value="delete" class="btn" /> <input type="checkbox" name="cb" /> <span>Many States Facing Water Shortages</span> </li> <li> <input type="button" value="delete" class="btn" /> <input type="checkbox" name="cb" /> <span>Student's Death Tied to Staph 'Superbug'</span> </li> <li> <input type="button" value="delete" class="btn" /> <input type="checkbox" name="cb" /> <span>Astronauts Prepare to Open Station Room</span> </li> <li> <input type="button" value="delete" class="btn" /> <input type="checkbox" name="cb" /> <span>Lawmaker's Remarks Offend the Dutch</span> </li> <li> <input type="button" value="delete" class="btn" /> <input type="checkbox" name="cb" /> <span>Rice Looks to History for Peace Effort</span> </li> <li> <input type="button" value="delete" class="btn" /> <input type="checkbox" name="cb" /> <span>US to Order Diplomats to Serve in Iraq</span> </li> </ul> <input type="button" value="delete selected items" onclick="deleteSelectedItems();" /> </body> </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>replaceChild demo</title> <script type="text/javascript"> function replaceNode() { document.write("replaceNode"); var pos = parseInt(document.getElementById('txtPos').value) || 0; var new= document.createElement('li'); var text = document.createTextNode('new node'); new.appendChild(text); new.style.backgroundColor = '#ff0'; var ul = document.getElementById('parent'); var lis = ul.getElementsByTagName('li'); if(pos >= lis.length) { alert('error index'); return; } ul.replaceChild(new,lis[pos]); //替换子节点 alert("替换成功"); } </script> </head> <body> <ul id="parent"> <li>child node</li> <li>child node</li> <li>child node</li> <li>child node</li> <li>child node</li> <li>child node</li> <li>child node</li> <li>child node</li> <li>child node</li> </ul> <label for="txtPos">node position:</label> <input type="text" id="txtPos" /> <input type="button" value="replace" onclick="replaceNode();" /> </body> </html>
源码见附件
发表评论
-
JavaScript内置对象
2011-06-24 15:19 1025Array 数组 var myArray = new Arra ... -
JavaScript基本语法与内置函数
2011-06-24 10:34 1492JavaScript使用var进行变量声明,变量名长度是任意的 ... -
JavaScript 一些例子
2011-06-24 09:12 11741,列表节点操作 <!DOCTYPE html PUBL ... -
JavaScript的windows对象,document对象一些例子
2011-06-23 16:19 1561window对象的方法,resizeTo和moveTo< ... -
javascipt语法
2010-09-15 08:47 1154对象的定义 基本格式如下: Function Obje ... -
JavaScript正则表达式
2010-08-27 08:44 959正则表达式是对字符串的结构进行的形式化描述,非常简洁优美,而且 ... -
JavaScript数组
2010-08-26 20:47 986JavaScript的数组也是一个 ... -
JavaScript函数
2010-08-26 19:58 944在JavaScript中,函数本身与其他任何的内置对象在低位上 ... -
JavaScript对象与JSON
2010-08-26 18:56 988对象的声明有三种方式: Ø 通过new操作符作用域O ...
相关推荐
在JavaScript中,DOM操作主要包括以下几大方面: 1. **获取元素**:`document.getElementById()`,`document.querySelector()`,`document.querySelectorAll()`等方法可以用来根据ID、CSS选择器或匹配多个元素的...
- **性能优化**:分享一些关于提高JavaScript和DOM操作效率的小技巧,比如减少重绘和回流等。 5. **实例与案例研究** - **实战项目**:通过一系列具体的例子和小项目来加深对理论知识的理解,并锻炼实际开发能力...
学习Javascript用《JavaScript DOM编程艺术》来入门最好不过了,老老实实看两遍,看完了你就会对JS有一个大概的了解,整本书都围绕着一个网页效果例子展开,你跟着老老实实敲一篇,敲完之后,你会发现这个效果不是常...
学习《JavaScript DOM 编程艺术》不仅可以帮助开发者掌握JavaScript与DOM的基本操作,还能提升网页的交互性和用户体验。无论你是初学者还是有经验的开发者,这本书都将提供宝贵的指导,助你在Web开发领域更进一步。...
在本书中,作者首先详细讲解了DOM的基础概念,包括DOM是什么,它如何工作,以及如何通过JavaScript访问和操作DOM元素。DOM提供了一种标准的方式来表示和操作HTML或XML文档的结构,使得开发者可以通过脚本语言来改变...
在这个例子中,我们将深入探讨如何使用DOM解析XML文件,以理解和掌握XML文档的结构,并进行数据提取、修改和创建。 首先,XML(Extensible Markup Language)是一种标记语言,用于存储和传输数据,具有自描述性和...
DOM编程艺术这部分内容将详细介绍如何使用JavaScript操作DOM树,包括查找、创建、修改和删除节点,以及如何绑定和处理事件。 书中的源代码包含了一系列与书中实例对应的练习,这些练习可以帮助读者巩固所学知识,...
《JavaScript DOM高级程序设计》 首先教你搭建一个类似JQuery的额工具函数库,然后通过讲解几个实际中经常遇到的几个应用例子,会让初学者受益匪浅 《JavaScript设计模式》主要讲Javascript的设计模式,说实话,翻译...
DOM是HTML和XML文档的结构化表示,通过JavaScript,我们可以利用DOM来动态地操作网页内容,实现丰富的用户交互效果。这本书的核心在于帮助开发者理解和掌握如何有效地利用JavaScript操纵DOM,以实现网页的动态更新、...
《JavaScript DOM编程艺术》是一本深入探讨如何使用JavaScript操作网页文档对象模型(DOM)的经典著作。这本书的第二版原代码提供了丰富的示例和实践练习,帮助读者深化对JavaScript与DOM交互的理解。DOM是Web开发中...
"javascript100个小例子"这个资源集合了100个JavaScript编程的小实例,涵盖了各种操作和效果,非常适合初学者进行实践学习,同时也为项目开发提供了现成的代码片段。 在JavaScript的学习中,了解和掌握以下几个关键...
这个压缩包"JavaScript DOM Source"可能包含这些知识点的实例代码,学习者可以通过实践这些例子,加深对DOM的理解,提升JavaScript开发技能。无论你是初学者还是经验丰富的开发者,熟悉DOM都是必不可少的。
JavaScript DOM编程艺术是一本深入探讨如何使用JavaScript与Document Object Model(DOM)进行交互的经典书籍。DOM是HTML和XML文档的结构化表示,它允许我们通过编程方式操纵网页内容。第二版通常会涵盖更多现代Web...
学习Javascript用《JavaScript DOM编程艺术》来入门最好不过了,老老实实看两遍,看完了你就会对JS有一个大概的了解,整本书都围绕着一个网页效果例子展开,你跟着老老实实敲一篇,敲完之后,你会发现这个效果不是常...
5. **DOM操作**:通过DOM,JavaScript可以访问和修改HTML元素。这可能包括创建新元素、查找元素、改变元素属性或内容,甚至移除元素。 6. **数组方法**:JavaScript的数组提供了丰富的内置方法,如push、pop、shift...
以下是一些常见的JavaScript DOM操作方法,这些方法在ASP.NET环境下同样适用: 1. `appendChild` 方法:这个方法用于在指定元素的子节点列表末尾添加一个新的子节点。在示例中,`fnAppend`函数创建了一个新的`<LI>`...
7. **DOM操作**:Document Object Model (DOM)是HTML和XML文档的结构表示,JavaScript可以用来遍历、修改或添加DOM元素,从而改变网页内容。 8. **AJAX**:Asynchronous JavaScript and XML,尽管现在不常用XML,但...
在这个"Put It All Together"的例子中,我们将深入理解如何综合运用JavaScript与DOM的各种技术,实现动态交互的网页效果。 首先,DOM是W3C制定的一种标准,它将网页视为一个可编程的对象树,每个HTML元素都是树中的...
点击隔行换色 点击元素,背景色要发生改变 之前的元素恢复默认的背景色