关于W3C DOM

W 3C    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    动态创建内容时所用的W 3C 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;”

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值