- 浏览: 1069842 次
- 性别:
- 来自: 南京
-
文章分类
- 全部博客 (501)
- dwr (6)
- javascript (84)
- oracle (66)
- jsp/servlet (18)
- ant (3)
- 基础知识 (12)
- EXT (10)
- My SQL (10)
- java (71)
- spring (37)
- 学习的对象 (2)
- Linux (24)
- 面试 (1)
- HTML/CSS (11)
- tomcat (11)
- 收藏夹 (2)
- Power Designer (2)
- struts.xml配置文件 (1)
- sturts2 (3)
- myeclipse (8)
- eclipse (7)
- Maven (34)
- SVN (3)
- SAP JCO (2)
- JBOSS (11)
- webservice (8)
- word (1)
- 敏捷开发 (1)
- sybase (4)
- Nexus (3)
- EhCache (3)
- log4j (3)
- Cookie (4)
- Session (4)
- CXF (7)
- AXIS (2)
- SSO (1)
- LDAP (1)
- velocity (2)
- Jquery (5)
- redis (2)
- http (4)
- dojo (1)
- Linux资源监控软件mnon的安装与运用 (1)
- notepad++ (1)
- EA (1)
- UML (1)
- JasperReports (1)
- 权限 (0)
- freemarker (4)
- Spring MVC (1)
- JMS (1)
- activeMQ (1)
- hession (3)
- 安全 (1)
- ibatis (2)
- log (1)
- nginx (1)
最新评论
-
winhbb:
我刚好遇到了一个问题(在可以依赖注入的场合有效):有两个模块A ...
解决Maven项目相互依赖/循环依赖/双向依赖的问题 -
nanjiwubing123:
long3ok 写道你好 XmlOutputFormatter ...
用XStream转换复杂XML -
zhoujianboy:
另外一个方法实现eclipse tomcat 热部署:http ...
eclipse下实现maven项目在tomcat容器热部署方法 -
long3ok:
你好 XmlOutputFormatter 请问这个类是在什么 ...
用XStream转换复杂XML -
ganbo:
总结的好,文章给力。
解决Maven项目相互依赖/循环依赖/双向依赖的问题
document.createElement(element): 创建一个标签为element的Element节点。
注意:
在HTML中,element大小写不敏感;在XML(XHTML)中大小写敏感。
例子:
IE下运行创建element的时候,可以同时设置属性:
document.createTextNode("string");创建内容为string的文本节点
document.createDocumentFragment()创建一个未定义类型的DocumentFragment对象(继承自Node)
newNode =someNode.cloneNode(bool)
newNode =someNode.cloneNode(bool): 克隆someNode,返回克隆后的节点。bool = true表示深度克隆,将会克隆someNode的下属所有子节点;bool = false为浅克隆,仅克隆someNode本身。克隆的节点将拥有和原有节点一样的属性,如ID等
有关克隆的'事件处理':
1.如果事件函数直接添加在HTML页面上,如<li onclick="fn();"></li>,那么,克隆得到的节点也将拥有该事件,就好比该事件处理函数也是节点的一个属性一般。
2.如果事件函数以DOM LEVEL 0 的形式添加,如:
someNode.onclick = fn;
那么,克隆后的节点newNode不会拥有该事件函数。
3.如果事件函数以DOM LEVEL 2 的形式添加,如:
则在firefox,chrome中,克隆后的节点不会拥有该事件函数,而在IE中,克隆后的节点也会拥有该处理函数。
someNode.appendChild(newNode)
将newNode添加作为someNode的最后一个子节点,返回值为 newNode.newNode将从DOM原来的位置被自动移除,然后作为someNode的最后一个节点出现在DOM上,换句话说,这是一种'move'操作,而不是'copy'操作。
例子:
someNode.insertBefore(newNode,oldNode)
将newNode插入到oldNode之前。返回newNode.如果oldNode为null,则操作结果相同于someNode.appendChild(newNode);
someNode.replaceChild(newNode, oldNode): 用newNode(不能为空)替换oldNode.
someNode.removeChild(oldNode):删除someNode的子节点oldNode(包括它下面的所有子节点).
附带 Document Object Model (Core) Level 1中关于几种节点的IDL 定义:
[转载]:http://mutongwu.iteye.com/blog/709860
注意:
在HTML中,element大小写不敏感;在XML(XHTML)中大小写敏感。
例子:
1.var el = document.createElement("div"); 2.el.id = "myDiv"; 3.el.className = "nav"; 4.document.appendChild(el);
IE下运行创建element的时候,可以同时设置属性:
1.if (client.browser.ie & & client.browser.ie < = 7){ 2. var iframe = document.createElement('<iframe name=\"myframe\"> < /iframe>'); 3. //create input element 4. var input = document.createElement('<input type=\"checkbox\" />'); 5. //create button 6. var button = document.createElement('<button type=\"reset\"> </button>'); 7. //create radio buttons 8. var radio1 = document.createElement('<input type=\"radio\" name=\"choice\" value=\"1\" />'); 9. var radio2 = document.createElement('<input type=\"radio\" name=\"choice\" value=\"2\" />'); 10.}
document.createTextNode("string");创建内容为string的文本节点
var element = document.createElement('div'); 2. element.className = 'message'; 3. var textNode = document.createTextNode('Hello world!'); 4. element.appendChild(textNode); 5. var anotherTextNode = document.createTextNode('Yippee!'); 6. element.appendChild(anotherTextNode); 7. document.body.appendChild(element); 8. alert(element.childNodes.length); //2 9. /* 10. 上述代码中,element将会有2个child因为我们创建了2个Text Node,这可能不是我们想要的结果,调用normalize()方法,可以使得节点下面的文本节点内容进行“拼接”: 11.*/ 12. element.normalize(); 13. alert(element.childNodes.length); //1 14. alert(element.firstChild.nodeValue); //”Hello World!Yippee!”
document.createDocumentFragment()创建一个未定义类型的DocumentFragment对象(继承自Node)
1.var fragment = document.createDocumentFragment(); 2.var ul = document.getElementById('myList'); 3.var li = null; 4.for (var i=0; i < 3; i++){ 5.li = document.createElement('li'); 6.li.appendChild(document.createTextNode('Item ' + (i+1))); 7. fragment.appendChild(li); 8.} 9.//alert(fragment.childNodes.length);//3 10.//fargment中的子节点将被 'move' 到DOM tree中,它里面的内容被"清空"了。 11.ul.appendChild(fragment); 12. 13.//alert(fragment.childNodes.length);//0
newNode =someNode.cloneNode(bool)
newNode =someNode.cloneNode(bool): 克隆someNode,返回克隆后的节点。bool = true表示深度克隆,将会克隆someNode的下属所有子节点;bool = false为浅克隆,仅克隆someNode本身。克隆的节点将拥有和原有节点一样的属性,如ID等
有关克隆的'事件处理':
1.如果事件函数直接添加在HTML页面上,如<li onclick="fn();"></li>,那么,克隆得到的节点也将拥有该事件,就好比该事件处理函数也是节点的一个属性一般。
2.如果事件函数以DOM LEVEL 0 的形式添加,如:
someNode.onclick = fn;
那么,克隆后的节点newNode不会拥有该事件函数。
3.如果事件函数以DOM LEVEL 2 的形式添加,如:
1.someNode.addEventListener('click',fn,false);// firefox ,chrome or other browers 2.omeNode.attachEvent('onclick',fn);//IE
则在firefox,chrome中,克隆后的节点不会拥有该事件函数,而在IE中,克隆后的节点也会拥有该处理函数。
someNode.appendChild(newNode)
将newNode添加作为someNode的最后一个子节点,返回值为 newNode.newNode将从DOM原来的位置被自动移除,然后作为someNode的最后一个节点出现在DOM上,换句话说,这是一种'move'操作,而不是'copy'操作。
例子:
1.var returnedNode = someNode.appendChild(someNode.firstChild); 2.alert(returnedNode == someNode.firstChild); //false 3.alert(returnedNode == someNode.lastChild); //true
someNode.insertBefore(newNode,oldNode)
将newNode插入到oldNode之前。返回newNode.如果oldNode为null,则操作结果相同于someNode.appendChild(newNode);
1.returnedNode = someNode.insertBefore(newNode, null); 2.alert(newNode == someNode.lastChild); //true
someNode.replaceChild(newNode, oldNode): 用newNode(不能为空)替换oldNode.
someNode.removeChild(oldNode):删除someNode的子节点oldNode(包括它下面的所有子节点).
附带 Document Object Model (Core) Level 1中关于几种节点的IDL 定义:
1.interface Document : Node { 2. readonly attribute DocumentType doctype; 3. readonly attribute DOMImplementation implementation; 4. readonly attribute Element documentElement; 5. Element createElement(in DOMString tagName) 6. raises(DOMException); 7. DocumentFragment createDocumentFragment(); 8. Text createTextNode(in DOMString data); 9. Comment createComment(in DOMString data); 10. CDATASection createCDATASection(in DOMString data) 11. raises(DOMException); 12. ProcessingInstruction createProcessingInstruction(in DOMString target, 13. in DOMString data) 14. raises(DOMException); 15. Attr createAttribute(in DOMString name) 16. raises(DOMException); 17. EntityReference createEntityReference(in DOMString name) 18. raises(DOMException); 19. NodeList getElementsByTagName(in DOMString tagname); 20.}; 21.interface Element : Node { 22. readonly attribute DOMString tagName; 23. DOMString getAttribute(in DOMString name); 24. void setAttribute(in DOMString name, 25. in DOMString value) 26. raises(DOMException); 27. void removeAttribute(in DOMString name) 28. raises(DOMException); 29. Attr getAttributeNode(in DOMString name); 30. Attr setAttributeNode(in Attr newAttr) 31. raises(DOMException); 32. Attr removeAttributeNode(in Attr oldAttr) 33. raises(DOMException); 34. NodeList getElementsByTagName(in DOMString name); 35. void normalize(); 36.}; 37.interface HTMLElement : Element { 38. attribute DOMString id; 39. attribute DOMString title; 40. attribute DOMString lang; 41. attribute DOMString dir; 42. attribute DOMString className; 43.}; 44. 45. 46.interface CharacterData : Node { 47. attribute DOMString data; 48. // raises(DOMException) on setting 49. // raises(DOMException) on retrieval 50. readonly attribute unsigned long length; 51. DOMString substringData(in unsigned long offset, 52. in unsigned long count) 53. raises(DOMException); 54. void appendData(in DOMString arg) 55. raises(DOMException); 56. void insertData(in unsigned long offset, 57. in DOMString arg) 58. raises(DOMException); 59. void deleteData(in unsigned long offset, 60. in unsigned long count) 61. raises(DOMException); 62. void replaceData(in unsigned long offset, 63. in unsigned long count, 64. in DOMString arg) 65. raises(DOMException); 66.}; 67. 68.interface Text : CharacterData { 69. Text splitText(in unsigned long offset) 70. raises(DOMException); 71.}; 72. 73.interface DocumentFragment : Node { 74.};
[转载]:http://mutongwu.iteye.com/blog/709860
发表评论
-
JSONEditor
2015-07-08 20:11 590JSONEditor: https://github.com/ ... -
Javascript开发调试
2014-07-08 10:08 772小谈chrome调试命令:console.log的使用 h ... -
利用Script实现JSONP跨域
2014-01-24 09:38 9331.什么是跨域 我们经常会在页面上使用ajax请求访问其他服 ... -
jQuery JSONP 跨域实践
2013-12-12 18:24 694jQuery JSONP 跨域实践 一客户端(url:htt ... -
利用CSS、JavaScript及Ajax实现图片预加载的三大方法
2013-10-17 09:35 721预加载图片是提高用户体验的一个很好方法。图片预先加载到浏览器中 ... -
Js中escape(),encodeURI()和encodeURIComponent()使用和比较:
2013-09-12 09:42 1042Js中escape(),encodeURI()和encodeU ... -
If-Modified-Since & If-None-Match
2013-04-27 13:24 885If-Modified-Since & If-None ... -
为什么JS文件带参数 JS后带参数什么意思
2013-04-27 11:20 1384我们经常在页面里会看到在加载的js或css文件带时文件后面常常 ... -
js实现网页图片延时加载的原理和代码
2013-04-23 11:52 1008有时我们看到一些大型网站,页面如果有很多图片的时候,当你滚动到 ... -
关于document.compatMode的一些介绍
2013-04-22 17:35 986对于document.compatMode,很多朋友可能都根我 ... -
js之事件冒泡和事件捕获
2013-04-20 10:03 1743事件——怎样使用事件以及IE和DOM事件模型之间存在哪些主要差 ... -
js中addEventListener中第3个参数 .
2013-04-19 16:33 1648捕获阶段、目标阶段、冒泡阶段 addEventListener ... -
超链接在web开发中使用总结
2013-04-02 14:33 1135在工作中在前端页面的 ... -
JavaScript Module Pattern: In-Depth
2013-03-27 11:47 1002Module difinition: http://www.a ... -
JQuery移除事件
2013-01-30 13:00 942移除事件 unbind(type [,data]) ... -
Js 冒泡事件阻止
2013-01-29 09:27 10071. 事件目标 现在,事 ... -
查找所有嵌套iframe .
2013-01-28 10:19 116001.//查找所有嵌套iframevar allIfrs = ... -
什么是同源策略
2012-12-12 11:15 1155一.什么是同源策略 ... -
js 编码,使用java解码方式
2012-10-30 11:02 1643使用两个方法:decodeURIComponent和escap ... -
Cookies
2012-05-04 10:10 1050ookies Cookies 集合设置 coo ...
相关推荐
jQuery是一个广泛使用的JavaScript库,简化了DOM操作,使得创建交互式树形菜单更加便捷。例如,可以使用jQuery的`slideToggle()`函数来优雅地展开和折叠节点。 4. **AJAX与异步加载**: 当数据量较大时,为了提高...
JAXB提供了`Unmarshaller`接口,通过`unmarshal()`方法,可以从XML输入源(如文件、流或DOM节点)创建Java对象。 4. **注解驱动的绑定**: JAXB支持使用注解来定制Java类和XML之间的映射。例如,`@XmlElementWrapper...
上述代码段展示了创建一个XML声明节点和一个元素节点,并将文本节点与元素节点链接起来,最终将整个文档保存到"madeByHand.xml"文件的过程。 除了基本的加载和保存操作,TinyXML还提供了遍历DOM结构的功能,允许...
2. **View模块**:处理DOM元素的创建、渲染和更新,实现了zTree的界面展示。 3. **Tool模块**:提供了各种工具函数,如字符串处理、数组操作、时间处理等。 4. **Event模块**:处理用户交互事件,如点击、拖拽等,...
1. DOM解析:DOM将整个XML文档加载到内存中,创建一个树形结构,允许开发者通过节点遍历和操作XML文档。这种方式适用于小型XML文件,因为大型文件可能会消耗大量内存。 2. SAX解析:SAX是一种事件驱动的解析方式,...
- **节点操作**:DOM提供了丰富的API用于查询、创建、删除和修改节点,如`document.selection.createRange()`用于获取文档的选中范围。 ### 知识点三:版权保护策略 #### 3.1 版权声明的法律意义 在互联网环境下...
同时,转载时不要移除本申明。如产生任何纠纷,均与本博客所有人、发表该文献之人无任何关系。谢谢合作 本书共分4部分,从xml、servlet、jsp和应用的角度向读者展示了java web开发中各种技术的应用,循序渐进地...
同时,转载时不要移除本申明。如产生任何纠纷,均与本博客所有人、发表该文献之人无任何关系。谢谢合作 本书共分4部分,从xml、servlet、jsp和应用的角度向读者展示了java web开发中各种技术的应用,循序渐进地...
同时,转载时不要移除本申明。如产生任何纠纷,均与本博客所有人、发表该文献之人无任何关系。谢谢合作 本书共分4部分,从xml、servlet、jsp和应用的角度向读者展示了java web开发中各种技术的应用,循序渐进地...
同时,转载时不要移除本申明。如产生任何纠纷,均与本博客所有人、发表该文献之人无任何关系。谢谢合作 本书共分4部分,从xml、servlet、jsp和应用的角度向读者展示了java web开发中各种技术的应用,循序渐进地...