posts - 495,comments - 227,trackbacks - 0

W3C   DOM

文档对象模型 (DOM) 是与平台和语言无关的接口,允许程序和脚本动态地访问和更新文档的内容,结构和样式。文档可以进一步处理,处理的结果可以放回到所提供的页面中。

 

3-1   用于处理 XML 文档的 DOM 元素属性

属性名

描述

childNodes

返回当前元素所有子元素的数组

firstChild

返回当前元素的第一个下级子元素

lastChild

返回当前元素的最后一个子元素

nextSibling

返回紧跟在当前元素后面的元素

nodeValue

指定表示元素值的读 / 写属性

parentNode

返回元素的父节点

previousSibling

返回紧邻当前元素之前的元素

 

3-2    用于遍历 XML 文档的 DOM 元素方法

方法名

描述

getElementById(id)  (document)

获取有指定唯一 ID 属性值文档中的元素

getElementsByTagName(name)

返回当前元素中有指定标记名的子元素的数组

hasChildNodes()

返回一个布尔值,指示元素是否有子元素

getAttribute(name)

返回元素的属性值,属性由 name 指定

 

3-3    动态创建内容时所用的 W3C DOM 属性和方法

属性 / 方法

描述

document.createElement(tagName)

文档对象上的 createElement 方法可以创建由 tagName 指定的元素。如果以串 div 作为方法参数,就会生成一个 div 元素

Document.createTextNode(text)

文档对象的 createTextNode 方法会创建一个包含静态文本的节点

<element>.appendChild(childNode)

appendChild 方法将指定的节点增加到当前元素的子节点列表。例如,可以增加一个 option 元素,作为 select 元素的子节点。

<element>.getAttribute(name)

这些方法分别获得和设置元素中 name 属性的值

<element>.setAttribute(name,value)

<element>.insertBefore(newNode,targetNode)

这个方法将节点 newNode 作为当前元素的子节点插到 targetNode 元素前面

<element>.removeAttribute(name)

这个方法从元素中删除属性 name

<element>.removeChild(childNode)

这个方法从元素中删除子 childNode

<element>.replaceChild(newNode,oldNode)

这个方法将节点 oldNode 替换为节点 newNode

<element>.hasChildNodes()

这个方法返回一个布尔值,指示元素是否有子元素

 

关于浏览器的不兼容性

如果使用 appendChild <tr> 元素直接增加到 <table> 中,则在 IE 中这一行并不出现,但在其他浏览器中却会显示出来,对此的解决之道是,将 <tr> 元素增加到表的 <tbody> 元素中,这种解决办法在所有浏览器中都能正确工作。

关于 setAttribute 方法 ,IE 也有麻烦。 IE 不能使用 setAttribute 正确地设置 class 属性 , 对此有一个跨浏览器的解决方法,即同时使用 setAttribute(“class”,”newClassName”) setAttribute(“className”, “newClassName”) 。另外,在 IE 中不能使用 setAttribute 设置 style 属性。最能保证浏览器兼容的技术不是 <element>.setAttribute(“style”, “font-weight:bold”), 而是 <element>.style.cssText=“font-weight:bold;”

 
posted on 2006-12-31 16:59 SIMONE 阅读(420) 评论(0)  编辑  收藏 所属分类: JSPAJAX

只有注册用户登录后才能发表评论。


网站导航: