Показать сообщение отдельно
  #9 (permalink)  
Старый 20.09.2010, 18:42
Интересующийся
Отправить личное сообщение для pashak Посмотреть профиль Найти все сообщения от pashak
 
Регистрация: 08.04.2010
Сообщений: 16

Как вам нерекурсивный вариант, который базируется на регулярных выражениях?
var normalize=function normalize(htmlRoot){
	if(!htmlRoot)
		htmlRoot=document.documentElement;
	htmlRoot.innerHTML=(htmlRoot.innerHTML+"").replace(/\b([ \t\n\r]){2,}\b/g,function(x,y){return y[0];}).replace(/[ \t\n\r]{2,}/g,"").replace(/>[ \t\n\r]*\b/g,">").replace(/\b[ \t\n\r]*</g,"<");
};

Первый реплейс делает пробелы между словами одиночными.
Второй - удаляет все остальные множественные пробелы.
Третий - удаляет пробелы после открытия тега.
Четвертый - перед закрытием.
Кстати, набор заменяемых символов можно подправить.

Последний раз редактировалось pashak, 20.09.2010 в 18:51.
Ответить с цитированием