function cleanWhitespace(element){
//If 매개변수가 제공되지 않은 경우 전체 HTML 문서를 처리합니다.
//첫 번째 하위 노드를 시작 포인터로 사용
var cur = element.firstChild
// 임시 변수를 사용하여 현재 노드의 다음 노드
var tmp;
//자식 노드가 없을 때까지
while (cur != null){
//다음 노드 저장 현재 노드
tmp =cur.nextSibling
//노드가 텍스트 노드인 경우 공백을 포함해야 합니다.
if ( cur.nodeType == 3 && ! /S/.test(cur. nodeValue)){
//이 텍스트 노드 삭제
element.removeChild( cur )
//그렇지 않으면 요소입니다
} else if (cur.nodeType == 1); 🎜>//전체 문서 재귀
cleanWhitespace( cur )
}
cur = tmp;//하위 노드 순회
}
}
또한 사용 가능한 전송
function cleanWhitespace2(node) {
var notWhitespace = /S/;
for (var i=0; i < node.childNodes.length; i ) {
var childNode = node.childNodes[i]
if ( (childNode.nodeType == 3)&&(!notWhitespace .test(childNode.nodeValue))) {
node.removeChild(node.childNodes[i])
i--; >if (childNode.nodeType == 1) {
cleanWhitespace2(childNode);
}
}
}
이 노드의 공백만 지우는 경우 , 하위 노드는 통과되지 않습니다.
코드 복사
for(var i=0;i
var node=oEelement.childNodes[i]
if(node.nodeType) ==3 && !/S/.test(node.nodeValue)){node.parentNode.removeChild(node)}
}
}
사용 가능한 것도 전송
코드 복사
코드는 다음과 같습니다. function cleanWhitespace2(node) { var notWhitespace = /S/;
for (var i=0; i < node.childNodes.length ; i ) {
var childNode = node.childNodes[i]
if ((childNode.nodeType = = 3)&&(!notWhitespace.test(childNode.nodeValue))) {
node.removeChild (node.childNodes[i])
i--; nodeType == 1) {
cleanWhitespace2(childNode);
}
}
}
이 노드의 공백만 지우는 경우 하위 노드를 순회하지 마세요. 노드
코드 복사
if(node.nodeType==3 && !/S /.test(node.nodeValue)){node.parentNode.removeChild(노드)}
}
}