您的位置:首页 > 其它

博客首文--关于DOM递归中的一点启示!

2006-12-08 20:27 681 查看
首先近期在程序中遇到了一个莫名其妙的问题--在DOM递归中通过子节点得到的IHTMLDOMNode指针查询

IHTMLElement指针,竟然不可以(其实一开始是以为不可以)。

后来终于被我发现了一个问题

大家对于DOM熟悉的话,应该知道在递归DOM的时候,一些子节点中会跟上#text或者#comment。

于是我就奇怪了:这两个东西不是标记为啥也会出现在DOM中呢?(这点也不是很清楚,我认为可能是W3C原则定的吧。)

这两个东西如果不涉及到IHTMLElement接口查询,那到不要紧,但是涉及的话。其中之一就会给你点颜色瞧瞧

其中之一就是#text,它真是一个另类。说它另类一是它不是标签却会出现在DOM里面,二是既然是DOM里面的

IHTMLDOMNode,却偏偏查询不出它的IHTMLElement接口指针。为什么呢?就因为它不是标记啊,它就是文本

嘛!

于是当在DOM递归时要进行查询IHTMLElement接口时,就要通过IHTMLDOMNode的nodeType来进行判断了

里面参数是个long类型 分别有0(attribute属性) 1(element元素) 3(text文本) 8(comment注释)

好了 到这里错误也找到了,细节也就补上了。呵呵。。

第一次写文章,欢迎大家拍砖!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: