|
|
@@ -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");
|
|
|
}
|