Gildas 7 лет назад
Родитель
Сommit
79a330597a
1 измененных файлов с 7 добавлено и 3 удалено
  1. 7 3
      lib/single-file/single-file-core.js

+ 7 - 3
lib/single-file/single-file-core.js

@@ -210,6 +210,7 @@ const SingleFileCore = (() => {
 	// DOMProcessor
 	// ------------
 	const ESCAPED_FRAGMENT = "_escaped_fragment_=";
+	const EMPTY_DATA_URI = "data:base64,";
 
 	const batchRequest = new BatchRequest();
 
@@ -281,19 +282,22 @@ const SingleFileCore = (() => {
 
 		lazyLoadImages() {
 			this.doc.querySelectorAll("img[data-src]").forEach(imgElement => {
-				if (imgElement.dataset.src && imgElement.dataset.src.startsWith(DATA_URI_PREFIX) && imgElement.src != imgElement.dataset.src) {
+				const dataSrc = imgElement.dataset.src;
+				if (dataSrc && dataSrc.startsWith(DATA_URI_PREFIX) && dataSrc != EMPTY_DATA_URI && imgElement.src != dataSrc) {
 					imgElement.src = imgElement.dataset.src;
 					imgElement.removeAttribute("data-src");
 				}
 			});
 			this.doc.querySelectorAll("img[data-original]").forEach(imgElement => {
-				if (imgElement.dataset.original && imgElement.dataset.original.startsWith(DATA_URI_PREFIX) && imgElement.src != imgElement.dataset.original) {
+				const dataOriginal = imgElement.dataset.original;
+				if (dataOriginal && dataOriginal.startsWith(DATA_URI_PREFIX) && dataOriginal != EMPTY_DATA_URI && imgElement.src != dataOriginal) {
 					imgElement.src = imgElement.dataset.original;
 					imgElement.removeAttribute("data-original");
 				}
 			});
 			this.doc.querySelectorAll("[data-bg]").forEach(element => {
-				if (element.dataset.bg && element.dataset.bg.startsWith(DATA_URI_PREFIX) && !element.style.backgroundImage.includes(element.dataset.bg)) {
+				const dataBg = element.dataset.bg;
+				if (dataBg && dataBg.startsWith(DATA_URI_PREFIX) && dataBg != EMPTY_DATA_URI && !element.style.backgroundImage.includes(dataBg)) {
 					element.style.backgroundImage = "url(" + element.dataset.bg + ")";
 					element.removeAttribute("data-bg");
 				}