处理xml(html)中的空格
xml文档(包括html)是从一个独立的根结点开始,它包含指向子节点的指针。每一个子节点都包含指针指向它的父节点、相邻节点和子节点。标准dom中,dom指针不仅可以指向元素,也可以指向文本节点。 请看以下html代码: < body > < h1 > DOM简介 < / h1> < p id = " test " > DOM是一个表达XML文档的标准 < / p> < p > 你随处可见dom的身影 < / p> < / body> 我想获得id为test的p元素的下一个p元素,可能理所当然的认为用document.getElementById('test').nextSibling就能获得。其实不然。在ie中确实能够获得你想要的,而在firefox、Opera9和Safari中你只能获得一个空格。 《精通javascript》 上提供了一个函数,用于处理xm中的这些空格,其作用原理就是找出文本节点,并删除这些节点,以达到删除这些空格的目的。 function cleanWhitespace(element) { // 如果不提供参数,则处理整个HTML文档 element = element || document; // 使用第一个子节点作为开始指针 var cur = element.firstChild; // 一直到没有子节点为止 while (cur != null )