MudGuard: überflüssige Leerzeichen unfd Zeilenumbrüche entfernen

Beitrag lesen

Hi,

Um unnötige Fehler in Gecko-Browsern zu vermeiden, wird das Dokument zunächst von überflüssigen Leerzeichen und Zeilenumbrüchen befreit.
es handelt sich um folgende Zeile
dokument.body.innerHTML = dokument.body.innerHTML.replace(/[\r\n|\s]/g, '');

Daß damit auch Pipe-Zeichen entfernt werden, ist Dir klar?
Und ist das k Absicht?
Und außerdem werden damit nicht nur überflüssige, sondern alle (also auch notwendige) Leerzeichen, Zeilenumbrüche und Pipes entfernt.

Z.B. <a href="irgendwas">test</a> wird zu <ahref="irgendwas">test</a> - womit die Elementnamen im öffnenden und schließenden Tag nicht mehr zusammenpassen ...

function Entfernen(element){

element.innerHTML = element.innerHTML.replace(/[\r\n|\s]/g, '');
  while(0<element.childNodes.length){
    var Knoten = element.firstChild;
    var temp = element.removeChild(Knoten);
  }
}

  
Erscheint mir reichlich ineffizient. Erstmal sämtliche Leerzeichen, Pipes und Zeilenumbrüche im Element-Inhalt entfernen, um dann sämtliche Kindknoten zu entfernen.  
Wozu die Ersetzung im Inhalt, wenn der Inhalt sowieso entsorgt wird?  
  

> Konqeror und Safari stürzen sofort ab, sobald die Seite aufgerufen wird  
> [Beispielseite](http://test.twilo.de/zeilenumbruecheEntfernen.htm)  
> wie kann ich dieses Problem beheben?  
  
Indem Du es nicht erzeugst und die unsinnige Ersetzung wegläßt.  
  
cu,  
Andreas

-- 
[Warum nennt sich Andreas hier MudGuard?](http://MudGuard.de/)  
[Schreinerei Waechter](http://www.schreinerei-waechter.de/)  
[O o ostern ...](http://ostereier.andreas-waechter.de/)  
Fachfragen unaufgefordert per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.