dev-blog

πŸ“ Standard Pattern: Hiding Elements Until Data Loads

1️⃣ CSS

.hidden {
	display: none;
}

2️⃣ HTML

<div class="left-column hidden">
	<!-- left column content -->
</div>

<div class="right-column hidden">
	<!-- right column content -->
</div>

3️⃣ JavaScript

document.addEventListener("DOMContentLoaded", async () => {
	try {
		// βœ… Fetch and parse the JSON data
		const res = await fetch("./data.json");
		const data = await res.json();

		// βœ… Populate the DOM with JSON data
		console.log("Data loaded:", data);

		// βœ… Reveal the columns once data is ready
		document.querySelector(".left-column").classList.remove("hidden");
		document.querySelector(".right-column").classList.remove("hidden");
	} catch (err) {
		console.error("Error loading JSON:", err);
	}
});

πŸ’‘ Why this is standard practice