这只是一个简单的问题。我目前正在使用Mozilla的Rhino来开发一个小的webapp。作为一个步骤,我需要获取一个网页并过滤其所有节点。为此,我使用E4X。我以为我可以这样做:
var pnodes = doc..*(p);
但这会产生错误。怎么做对了?
(顺便说一句:这只是提高性能的一步。代码已经做得很好,它只是有点慢。)
答案 0 :(得分:2)
您应该可以使用以下内容:
doc..*.(name() == "p")
请注意,Rhino和SpiderMonkey实现中有一个bug,其中过滤器表达式name() == "p"
未正确确定当前节点的范围,因此XML
或{{方法已定义。
另一个可行的解决方案是查找文档中的所有XMLList
节点,并在数组中累积每个节点的父节点。
p