|
|
@@ -92,10 +92,8 @@ this.singlefile.lib.helper = this.singlefile.lib.helper || (() => {
|
|
|
function preProcessDoc(doc, win, options) {
|
|
|
doc.querySelectorAll("script").forEach(element => element.textContent = element.textContent.replace(/<\/script>/gi, "<\\/script>"));
|
|
|
doc.querySelectorAll("noscript").forEach(element => {
|
|
|
- const disabledNoscriptElement = doc.createElement("template");
|
|
|
- disabledNoscriptElement.setAttribute(DISABLED_NOSCRIPT_ATTRIBUTE_NAME, "");
|
|
|
- disabledNoscriptElement.dataset.singleFileNoscript = element.textContent;
|
|
|
- element.parentElement.replaceChild(disabledNoscriptElement, element);
|
|
|
+ element.setAttribute(DISABLED_NOSCRIPT_ATTRIBUTE_NAME, element.textContent);
|
|
|
+ element.textContent = "";
|
|
|
});
|
|
|
initDoc(doc);
|
|
|
if (doc.head) {
|
|
|
@@ -311,9 +309,8 @@ this.singlefile.lib.helper = this.singlefile.lib.helper || (() => {
|
|
|
|
|
|
function postProcessDoc(doc, markedElements) {
|
|
|
doc.querySelectorAll("[" + DISABLED_NOSCRIPT_ATTRIBUTE_NAME + "]").forEach(element => {
|
|
|
- const noscriptElement = doc.createElement("noscript");
|
|
|
- noscriptElement.textContent = element.dataset.singleFileNoscript;
|
|
|
- element.parentElement.replaceChild(noscriptElement, element);
|
|
|
+ element.textContent = element.getAttribute(DISABLED_NOSCRIPT_ATTRIBUTE_NAME);
|
|
|
+ element.removeAttribute(DISABLED_NOSCRIPT_ATTRIBUTE_NAME);
|
|
|
});
|
|
|
doc.querySelectorAll("meta[disabled-http-equiv]").forEach(element => {
|
|
|
element.setAttribute("http-equiv", element.getAttribute("disabled-http-equiv"));
|