【DOM编程艺术】DOM角度以及innerHTML角度看待testdiv内的标记
2014-04-14 21:42
260 查看
<!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>document.write</title> </head> <body> <script type="text/javascript"> document.write("<p>This is inserted</p>"); </script> <div id='testdiv'> <p>This is <em>my</em> content.</p> </div> </body> </html>
用DOM的眼睛看testdiv内的标记,如下所示:
元素节点 div
属性节点id='testdiv' 元素节点p
文本节点This is 元素节点em 文本节点content.
文本节点my
从innerHTML属性的角度来看则简单的多。就innerHTML属性来说,id为testdiv的标记里只有一个值为<p>This is <em>my</em> content.</p>
元素节点div
<p>This is <em>my</em> content.</p>
window.onload=function(){ var testdiv=document.getElementById('testdiv'); alert(testdiv.innerHTML); //读取 }
结果:弹出窗口 ie6下是<P>This is <EM>my</EM> content.</P> //大写标签
火狐和chrome下是<p>This is <em>my</em> content.</p>
解析: 很明显,innerHTML属性无细节可言。要想获得细节,就必须使用DOM方法和属性。
innerHTML既支持读取,又支持写入。
window.onload=function(){ var testdiv=document.getElementById('testdiv'); testdiv.innerHTML='<p>I inserted <em>this</em> content.</p>'; //写入 }
在任何时候,标准的DOM都可以用来替代innerHTML.虽说这往往需要多编写一些代码菜能获得同样的效果,但DOM同时也提供了更高的精确性和更强大的功能。
相关文章推荐
- 动态创建标记(js dom编程艺术之第七章笔记)
- 【DOM编程艺术】动态创建标记(签)---创建和插入节点
- JavaScript DOM 编程艺术学习笔记(一):静态标记
- 【DOM编程艺术】styleHeaderSibling函数以及nextSibling延伸(-获取下个元素节点)
- JavaScript_DOM编程艺术第二版学习笔记-第9章
- Javascript DOM 编程艺术:dom 节点及操作节点方法
- 好书推荐:JavaScript DOM 编程艺术英文原版PDF下载
- JavaScript DOM编程基础精华02(window对象的属性,事件中的this,动态创建DOM,innerText和innerHTML)
- javascript+dom编程艺术 -笔记
- JS DOM编程艺术——显示文献来源链接表—— JS学习笔记2015-7-17(第86天)
- JavaScript强化教程——DOM编程(两种控制div移动的方法)
- 浏览器渲染页面过程描述,DOM编程技巧以及重排和重绘。
- JavaScript Dom 编程艺术 笔记
- JS DOM编程艺术——动态创建标记—— JS学习笔记2015-7-13(第83天)
- JavaScript DOM 编程艺术(第二版) 初读学习笔记
- 2016.01.15 JS DOM编程艺术第一章第二章
- JavaScript Dom 编程艺术
- JS DOM编程艺术——用JS实现动画效果—— JS学习笔记2015-7-21(第88天)
- 【DOM编程艺术】DOM Core和HTML-DOM
- 《JavaScript DOM 编程艺术》(第二版)读书笔记(二)