Quellcode durchsuchen

remove source tags when needed

Gildas vor 7 Jahren
Ursprung
Commit
575df5d354
1 geänderte Dateien mit 14 neuen und 2 gelöschten Zeilen
  1. 14 2
      lib/single-file/single-file-core.js

+ 14 - 2
lib/single-file/single-file-core.js

@@ -441,13 +441,25 @@ this.SingleFileCore = this.SingleFileCore || (() => {
 			this.stats.set("processed", "audio sources", audioSourceElements.length);
 			if (this.options.removeAudioSrc) {
 				this.stats.set("discarded", "audio sources", audioSourceElements.length);
-				audioSourceElements.forEach(element => element.removeAttribute("src"));
+				audioSourceElements.forEach(element => {
+					if (element.tagName == "SOURCE") {
+						element.remove();
+					} else {
+						audioSourceElements.forEach(element => element.removeAttribute("src"));
+					}
+				});
 			}
 			const videoSourceElements = this.doc.querySelectorAll("video[src], video > source[src]");
 			this.stats.set("processed", "video sources", videoSourceElements.length);
 			if (this.options.removeVideoSrc) {
 				this.stats.set("discarded", "video sources", videoSourceElements.length);
-				videoSourceElements.forEach(element => element.removeAttribute("src"));
+				videoSourceElements.forEach(element => {
+					if (element.tagName == "SOURCE") {
+						element.remove();
+					} else {
+						videoSourceElements.forEach(element => element.removeAttribute("src"));
+					}
+				});
 			}
 		}