Analysiere einen HTML-String mit JS, ohne irgendwelche Seitenladungen auszulösen?

8

Wie diese Antwort zeigt, ist eine gute Möglichkeit, HTML in JavaScript zu analysieren, einfach die HTML- Parsing-Funktionen wie folgt:

%Vor%

Dies löst jedoch das Laden zusätzlicher Seiten für bestimmte HTML-Zeichenfolgen aus, zum Beispiel:

%Vor%

Sobald dieses Beispiel ausgeführt wird, versucht der Browser, die Seite zu laden:

Wie kann ich HTML von JavaScript ohne dieses Verhalten verarbeiten?

    
Claudiu 04.07.2016, 02:49
quelle

2 Antworten

0

Ich weiß nicht, ob es eine perfekte Lösung dafür gibt, aber da dies nur für die Verarbeitung ist, können Sie vor dem Zuweisen von innerHTML alle src-Attribute als notSrc="xyz.com" ersetzen, so dass es nicht geladen wird und wenn Sie sie später in der Verarbeitung benötigen, können Sie dies berücksichtigen. Der Browser wird hauptsächlich Bilder, Skripte und CSS-Dateien laden, dies wird die ersten 2 beheben, die CSS kann durch Ersetzen des href-Attributs erfolgen.

    
MoustafaS 04.07.2016 02:55
quelle
0

Wenn Sie die HTML-Antwort analysieren möchten, ohne unnötige Ressourcen wie Bilder oder Skripte zu laden, verwenden Sie createHTMLDocument () von DOMImplementation, um ein neues Dokument zu erstellen, das nicht mit dem vom Browser geparsten Dokument verbunden ist und sich so gut wie ein normales Dokument verhält.

    
Waqas 'wiki' Amjad 20.11.2017 13:00
quelle

Tags und Links