Wie zwei Dom oder DOM-Knoten im Allgemeinen vergleichen?
-
10-10-2019 - |
Frage
Ich bin mit var win1 = open.window(...); var win2 = open.window(...);
zu öffnen 2 Tabs / Fenster in Firefox - jetzt habe ich die beiden Dome vergleichen will (Dokument-Objekt-Modelle) für Ähnlichkeit.
So habe ich zwei Dom bekam eine sehr ähnliche Seite enthält. Die Seiten haben die gleiche HTML, aber verschiedene JavaScript-Dateien ausgeführt.
Generell ich überprüfen, ob HTML und CSS ist das gleiche:
var html1 = win1.document.body.innerHTML;
var html2 = win2.document.body.innerHTML;
if (html1 == html2) { ... }
var css1 = win1.document.body.style.cssText
var css2 = win2.document.body.style.cssText
if (css1 == css2) { ... }
Aber Vergleich aller DOM-Knoten scheint schlechte Ergebnisse zu erhalten:
var bodyNodes1 = win1.document.body.getElementsByTagName('*');
var bodyNodes2 = win2.document.body.getElementsByTagName('*');
bodyNodes1[123].innerHTML
ist nicht notwendig ähnlich bodyNodes2[123].innerHTML
Welche Methoden können verwendet werden, DOM-Knoten zu vergleichen? Führen Sie einen Rahmen / Bibliotheken / Scripts existieren zum Testen Seiten für Ähnlichkeit?
Ich bin sehr dankbar für alle Hinweise. : -)
Lösung
Ich denke, was Sie suchen entweder:
isEqualNode: http://help.dottoro.com/ljlpvjmd.php
isSameNode: http://help.dottoro.com/ljqqqfft.php
Hope, das hilft.