Aplikasi Jam Digital Masjid Gratis -

function useOfflineSchedule() // Jadwal offline standar masjid umum (kota Jakarta rata2) prayerSchedule = Subuh: "04:45", Dzuhur: "12:05", Ashar: "15:25", Maghrib: "18:02", Isya: "19:18" ; // Hijriah offline sederhana (coba generate dari tanggal masehi) const today = new Date(); hijriElement.innerText = `📅 Estimasi Hijriah · $today.toLocaleDateString()`; document.getElementById('lokasiMasjid').innerHTML = `🕌 Masjid (Mode Offline)`; renderPrayerTimes(new Date());

@keyframes pulse 0% opacity: 0.7; text-shadow: 0 0 0px gold; 100% opacity: 1; text-shadow: 0 0 6px #ffaa33;

.prayer-time font-size: 1.6rem; font-family: monospace; font-weight: 700; color: #f0f3f5; margin-top: 6px;

initApp(); </script> </body> </html>

// Tambahan geolocation (opsional) untuk lebih akurat function getLocationAndUpdate() if ("geolocation" in navigator) navigator.geolocation.getCurrentPosition(async (position) => const lat = position.coords.latitude; const lon = position.coords.longitude; try const url = `https://api.aladhan.com/v1/timings?latitude=$lat&longitude=$lon&method=2`; const res = await fetch(url); const data = await res.json(); if (data.code === 200 && data.data && data.data.timings) const timings = data.data.timings; prayerSchedule = Subuh: timings.Fajr, Dzuhur: timings.Dhuhr, Ashar: timings.Asr, Maghrib: timings.Maghrib, Isya: timings.Isha ; if(data.data.date.hijri) hijriElement.innerText = `$data.data.date.hijri.day $data.data.date.hijri.month.en $data.data.date.hijri.year H`; document.getElementById('lokasiMasjid').innerHTML = `📍 Masjid (GPS)`; renderPrayerTimes(new Date()); catch(e) console.log("Geo API error"); , () => fetchPrayerTimes(); // fallback jakarta ); else fetchPrayerTimes();

.prayer-name font-size: 1.1rem; font-weight: bold; color: #ffd966; letter-spacing: 1px;

.time-digits font-family: 'Courier New', 'Fira Mono', 'JetBrains Mono', monospace; font-size: 5rem; font-weight: bold; letter-spacing: 8px; color: #2ef7c4; text-shadow: 0 0 5px #00ffc3, 0 0 15px #00a37a; background: #010b09; display: inline-block; padding: 0.2rem 1rem; border-radius: 2rem; margin-bottom: 12px; aplikasi jam digital masjid gratis

// Elemen DOM const jamElement = document.getElementById('jamDigital'); const tanggalElement = document.getElementById('tanggalMasehi'); const hijriElement = document.getElementById('hijriDisplay'); const prayerGrid = document.getElementById('prayerGrid'); const azanMsgSpan = document.getElementById('azanMessage'); const testBtn = document.getElementById('testAzanBtn'); const resetBtn = document.getElementById('resetAzanBtn');

/* area jam digital LED */ .jam-led background: #0a0f0e; border-radius: 48px; padding: 25px 15px; text-align: center; box-shadow: inset 0 0 12px #00b89433, 0 10px 20px rgba(0,0,0,0.3); border: 1px solid #2e7d64;

.hijri-date font-size: 0.95rem; background: #2c5a50; padding: 4px 12px; border-radius: 30px; color: #f9eec1; @keyframes pulse 0% opacity: 0.7

.footer-note text-align: center; font-size: 0.7rem; color: #bbbb88; margin-top: 20px;

// Data jadwal sholat let prayerSchedule = Imsak: "04:30", Subuh: "04:45", Dzuhur: "12:00", Ashar: "15:20", Maghrib: "18:00", Isya: "19:15" ; // fallback sementara

/* panel utama */ .digital-masjid background: #000000aa; border-radius: 50px; padding: 20px; backdrop-filter: blur(4px); text-shadow: 0 0 0px gold

.city-name font-size: 1.2rem; background: #d4af37; color: #1e2f2c; padding: 4px 14px; border-radius: 40px; font-weight: bold;