From 720d752748b793a2f5cf3cc14cb75ad86e8919c0 Mon Sep 17 00:00:00 2001 From: sillylaird Date: Tue, 3 Feb 2026 21:27:57 -0500 Subject: First commit --- main.js | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 main.js (limited to 'main.js') diff --git a/main.js b/main.js new file mode 100644 index 0000000..7a12254 --- /dev/null +++ b/main.js @@ -0,0 +1,30 @@ +document.addEventListener('DOMContentLoaded', () => { + /** + * Updates the 'last modified' timestamp on the page. + * Looks for an element with the ID 'lastmod'. + */ + const lastModElement = document.getElementById('lastmod'); + if (lastModElement) { + // Use a standard YYYY-MM-DD format for the date. + const lastModifiedDate = new Date(document.lastModified); + lastModElement.textContent = lastModifiedDate.toISOString().split('T')[0]; + } + + /** + * Handles the mobile sidebar toggle functionality. + * Looks for a button with ID 'menu-toggle' and a sidebar with ID 'mobile-sidebar'. + */ + const menuToggleButton = document.getElementById('menu-toggle'); + const mobileSidebar = document.getElementById('mobile-sidebar'); + + if (menuToggleButton && mobileSidebar) { + const closedText = menuToggleButton.textContent; + const openText = menuToggleButton.dataset.openText || 'Hide menu'; // Fallback text + + menuToggleButton.addEventListener('click', () => { + const isExpanded = mobileSidebar.classList.toggle('visible'); + menuToggleButton.setAttribute('aria-expanded', String(isExpanded)); + menuToggleButton.textContent = isExpanded ? openText : closedText; + }); + } +}); \ No newline at end of file -- cgit v1.2.3