From 344f7de0dad002bdb55a8ae98fa05adb8216ccf3 Mon Sep 17 00:00:00 2001 From: ZhenShuo Leo <98386542+ZhenShuo2021@users.noreply.github.com> Date: Tue, 5 Aug 2025 17:02:53 +0800 Subject: [PATCH] fix(a11y): prevent disableImages FOUC --- assets/js/a11y.js | 5 ++++- assets/js/background-blur.js | 13 ------------- 2 files changed, 4 insertions(+), 14 deletions(-) diff --git a/assets/js/a11y.js b/assets/js/a11y.js index 48603832..ffb8d845 100644 --- a/assets/js/a11y.js +++ b/assets/js/a11y.js @@ -144,7 +144,10 @@ window.A11yPanel = (() => { }; if (getSettings().disableImages) { - FEATURES.disableImages.apply(true); + new MutationObserver(() => { + const img = document.getElementById("background-image"); + if (img) img.style.display = "none"; + }).observe(document, { childList: true, subtree: true }); } if (document.readyState === "loading") { diff --git a/assets/js/background-blur.js b/assets/js/background-blur.js index 1d60793b..364a3f21 100644 --- a/assets/js/background-blur.js +++ b/assets/js/background-blur.js @@ -37,16 +37,3 @@ document.querySelectorAll("script[data-target-id]").forEach((script) => { const disableBlur = settings.disableBlur || false; setBackgroundBlur(targetId, scrollDivisor, disableBlur, isMenuBlur); }); - -// Prevent disableImages FOUC -// Note: I tried putting this in a11y.js but it did not work, and placing it here prevents FOUC -(() => { - const settings = JSON.parse(localStorage.getItem("a11ySettings") || "{}"); - if (settings.disableImages) { - document.querySelectorAll("script[data-image-id]").forEach((script) => { - const imageId = script.getAttribute("data-image-id"); - const image = imageId && document.getElementById(imageId); - if (image) image.style.display = "none"; - }); - } -})();