Fix javascript issues

This commit is contained in:
dwindown
2025-08-23 16:53:43 +07:00
parent b0244b7ac0
commit 5f38b274cc
2 changed files with 20 additions and 8 deletions

View File

@@ -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