博客首文--关于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注释)
好了 到这里错误也找到了,细节也就补上了。呵呵。。
第一次写文章,欢迎大家拍砖!
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注释)
好了 到这里错误也找到了,细节也就补上了。呵呵。。
第一次写文章,欢迎大家拍砖!
相关文章推荐
- 关于接下来写博客的一点思考
- 关于博客在教学中的应用课题研究的一点小资料(1)。。
- 关于博客在教学中的应用课题研究的一点小资料(2)。。
- 关于DFS和递归的一点总结
- 关于群组博客的一点想法
- 关于博客的一点计划
- 关于MVC的一点启示
- 做博客系统,关于用户控件和母版页的一点收获
- 关于博客之外的一点话
- 关于博客的一点随想(Restart my blog)
- 关于递归的点一点
- 关于博客页面样式的一点想法
- 关于document.write()会清空dom的一点解释
- 关于工作总结内容和周期的一点启示
- 关于开通博客的一点小花絮
- 关于自己博客数量的检查及对博客的一点见解
- 关于 sso 博客大巴的神仙的一点思路
- 关于记录博客的一点感想
- 最近关于独立博客的一点
- 关于MVC的一点启示