Quellcode durchsuchen

use document#qsa to iterate on dom elements

Gildas vor 6 Jahren
Ursprung
Commit
1b8679e9df
1 geänderte Dateien mit 2 neuen und 3 gelöschten Zeilen
  1. 2 3
      lib/single-file/util/doc-helper.js

+ 2 - 3
lib/single-file/util/doc-helper.js

@@ -128,8 +128,8 @@ this.docHelper = this.docHelper || (() => {
 		};
 	}
 
-	function getShadowRootsData(element, data = { shadowRootsData: [], indexElement: 0 }) {
-		element.childNodes.forEach(node => {
+	function getShadowRootsData(element, data = { indexElement: 0, shadowRootsData: [] }) {
+		element.querySelectorAll("*").forEach(node => {
 			if (node.shadowRoot) {
 				node.setAttribute(SHADOW_ROOT_ATTRIBUTE_NAME, data.indexElement);
 				const indexEntry = data.indexElement;
@@ -137,7 +137,6 @@ this.docHelper = this.docHelper || (() => {
 				getShadowRootsData(node.shadowRoot, data);
 				data.shadowRootsData[indexEntry] = { content: node.shadowRoot.innerHTML };
 			}
-			getShadowRootsData(node, data);
 		});
 		return data.shadowRootsData;
 	}