function traverseAllChildren(node,cf,af){            //遍历全部子节点。对满足cf条件函数的节点进行af函数操作  
           var  childNodes,  i;  
           childNodes  =  node.getChildren();  
           for(i=0;i<childNodes.length;i++){  
                       if(cf(childNodes[i])){  
                                   af(childNodes[i]);  
                       }  
                       if(childNodes[i].getChildren().length>0){  
                                   traverseAllChildren(childNodes[i],cf,af); //这儿的childNodes[i]参数好象又是自己
                       }  
           }  
}  

解决方案 »

  1.   

    “childNodes[i]参数好象又是自己”?——是node的子节点啊。
      

  2.   

    单看函数是没问题的,但vs2003一直有个引用js文件的bug,看看你是什么方式引用的?用<script language="javascript" src="...js" type="text/javascript"></script>的方式需要将js文件用记事本另存为utf-8格式,太容易出问题。用<!-- #INCLUDE VIRTUAL ="...js" -->的方式引用吧,它在每个页面里都插入了你的js文件的内容。
      

  3.   

    呵呵,就是了。我还纳闷怎么常说的bug没在我这出现。谢谢。
      

  4.   

    还有,以前以为这个bug是引用不到文件,现在看来引用到文件了(函数可调用),但函数执行有问题。
    微软太不可琢磨了。^_^