Kaynağa Gözat

fixed data-srcset attribute handling

Gildas 7 yıl önce
ebeveyn
işleme
b0f063a03e
1 değiştirilmiş dosya ile 5 ekleme ve 5 silme
  1. 5 5
      lib/single-file/single-file-core.js

+ 5 - 5
lib/single-file/single-file-core.js

@@ -471,13 +471,13 @@ const SingleFileCore = (() => {
 				DomProcessorHelper.processAttribute(this.doc.querySelectorAll("video[poster]"), "poster", this.baseURI),
 				DomProcessorHelper.processAttribute(this.doc.querySelectorAll("*[background]"), "background", this.baseURI),
 				DomProcessorHelper.processAttribute(this.doc.querySelectorAll("image, use"), "xlink:href", this.baseURI),
-				DomProcessorHelper.processSrcset(this.doc.querySelectorAll("[srcset]"), this.baseURI, this.dom)
+				DomProcessorHelper.processSrcset(this.doc.querySelectorAll("[srcset]"), "srcset", this.baseURI, this.dom)
 			];
 			if (this.options.lazyLoadImages) {
 				resourcePromises.push(DomProcessorHelper.processAttribute(this.doc.querySelectorAll("img[data-src]"), "data-src", this.baseURI));
 				resourcePromises.push(DomProcessorHelper.processAttribute(this.doc.querySelectorAll("img[data-original]"), "data-original", this.baseURI));
 				resourcePromises.push(DomProcessorHelper.processAttribute(this.doc.querySelectorAll("img[data-bg]"), "data-bg", this.baseURI));
-				resourcePromises.push(DomProcessorHelper.processSrcset(this.doc.querySelectorAll("[data-srcset]"), this.baseURI, this.dom));
+				resourcePromises.push(DomProcessorHelper.processSrcset(this.doc.querySelectorAll("[data-srcset]"), "data-srcset", this.baseURI, this.dom));
 			}
 			await resourcePromises;
 		}
@@ -714,9 +714,9 @@ const SingleFileCore = (() => {
 			}));
 		}
 
-		static async processSrcset(resourceElements, baseURI, dom) {
+		static async processSrcset(resourceElements, attributeName, baseURI, dom) {
 			await Promise.all(Array.from(resourceElements).map(async resourceElement => {
-				const srcset = dom.parseSrcset(resourceElement.getAttribute("srcset"));
+				const srcset = dom.parseSrcset(resourceElement.getAttribute(attributeName));
 				const srcsetValues = await Promise.all(srcset.map(async srcsetValue => {
 					const resourceURL = DomUtil.normalizeURL(srcsetValue.url);
 					if (resourceURL && resourceURL != baseURI && DomUtil.testValidPath(resourceURL)) {
@@ -728,7 +728,7 @@ const SingleFileCore = (() => {
 						}
 					}
 				}));
-				resourceElement.setAttribute("srcset", srcsetValues.join(","));
+				resourceElement.setAttribute(attributeName, srcsetValues.join(","));
 			}));
 		}
 	}