From 5f38b274cc3b361dd3549fa2e8ad20530e9f3fa2 Mon Sep 17 00:00:00 2001 From: dwindown Date: Sat, 23 Aug 2025 16:53:43 +0700 Subject: [PATCH] Fix javascript issues --- index.html | 8 ++++---- script.js | 20 ++++++++++++++++---- 2 files changed, 20 insertions(+), 8 deletions(-) diff --git a/index.html b/index.html index 1e924ce..a9a7c92 100644 --- a/index.html +++ b/index.html @@ -40,8 +40,8 @@

Emoji Glossary

@@ -49,8 +49,8 @@ diff --git a/script.js b/script.js index a7c430f..970ed33 100644 --- a/script.js +++ b/script.js @@ -8,6 +8,12 @@ document.addEventListener('DOMContentLoaded', () => { const darkIcon = document.getElementById('theme-toggle-dark-icon'); const lightIconDesktop = document.getElementById('theme-toggle-light-icon-desktop'); const darkIconDesktop = document.getElementById('theme-toggle-dark-icon-desktop'); + + // Check if essential elements exist + if (!emojiGrid || !searchInput) { + console.error('Critical DOM elements missing'); + return; + } const modal = document.getElementById('emoji-modal'); const modalContent = document.getElementById('modal-content'); const modalCloseBtn = document.getElementById('modal-close-btn'); @@ -57,8 +63,8 @@ document.addEventListener('DOMContentLoaded', () => { applyTheme(isDark); }; - darkModeToggle.addEventListener('click', toggleDarkMode); - darkModeToggleDesktop.addEventListener('click', toggleDarkMode); + if (darkModeToggle) darkModeToggle.addEventListener('click', toggleDarkMode); + if (darkModeToggleDesktop) darkModeToggleDesktop.addEventListener('click', toggleDarkMode); // Set initial icon state on load const initialIsDark = document.documentElement.classList.contains('dark'); @@ -89,10 +95,16 @@ document.addEventListener('DOMContentLoaded', () => { Promise.all(jsonFiles.map(file => fetch(file) .then(response => { - if (!response.ok) throw new Error(`Failed to load ${file}`); + if (!response.ok) { + console.error(`Failed to load ${file}: ${response.status}`); + throw new Error(`Failed to load ${file}`); + } return response.json(); }) - .catch(error => { console.error(error); return []; }) + .catch(error => { + console.error(`Error loading ${file}:`, error); + return file.includes('indonesian-keywords') ? {keywords: {}} : []; + }) )) .then(allData => { // Extract Indonesian keywords from the last file