{"id":214,"date":"2026-07-12T13:29:25","date_gmt":"2026-07-12T13:29:25","guid":{"rendered":"https:\/\/oks.digital\/?page_id=214"},"modified":"2026-07-12T13:29:27","modified_gmt":"2026-07-12T13:29:27","slug":"dubai-prayer-times","status":"publish","type":"page","link":"https:\/\/oks.digital\/ar\/dubai-prayer-times\/","title":{"rendered":"Dubai Prayer Times Today"},"content":{"rendered":"\n<style data-wp-block-html=\"css\">\n#ab-prayer-page,\n#ab-prayer-page * {\n  box-sizing: border-box;\n}\n\n#ab-prayer-page {\n  --ab-dark: #10251b;\n  --ab-green: #176b43;\n  --ab-green-dark: #0f4f31;\n  --ab-green-light: #e7f6ee;\n  --ab-text: #53645b;\n  --ab-border: #dceae2;\n  --ab-soft: #f5faf7;\n  --ab-gold-soft: #fff8e9;\n  --ab-white: #ffffff;\n  color: var(--ab-text);\n}\n\n.ab-wrap {\n  width: min(1120px, 92%);\n  margin: 0 auto;\n}\n\n.ab-hero {\n  padding: 38px 0 58px;\n  background:\n    radial-gradient(\n      circle at 88% 14%,\n      rgba(23, 107, 67, 0.12),\n      transparent 28%\n    ),\n    linear-gradient(\n      135deg,\n      #f3fbf7 0%,\n      #ffffff 55%,\n      #eef8f3 100%\n    );\n}\n\n.ab-breadcrumb {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 7px;\n  align-items: center;\n  margin-bottom: 32px;\n  color: #718078;\n  font-size: 13px;\n}\n\n.ab-breadcrumb a {\n  color: var(--ab-green);\n  text-decoration: none;\n}\n\n.ab-breadcrumb a:hover {\n  text-decoration: underline;\n}\n\n.ab-hero-grid {\n  display: grid;\n  grid-template-columns: minmax(0, 1.08fr) minmax(340px, 0.72fr);\n  gap: 42px;\n  align-items: center;\n}\n\n.ab-badge,\n.ab-eyebrow {\n  display: inline-block;\n  color: var(--ab-green);\n  font-size: 14px;\n  font-weight: 700;\n}\n\n.ab-badge {\n  padding: 8px 14px;\n  border: 1px solid #c8e5d4;\n  border-radius: 999px;\n  background: var(--ab-green-light);\n}\n\n.ab-eyebrow {\n  margin-bottom: 9px;\n  letter-spacing: 0.04em;\n  text-transform: uppercase;\n}\n\n.ab-hero h1 {\n  max-width: 720px;\n  margin: 18px 0;\n  color: var(--ab-dark);\n  font-size: clamp(38px, 5vw, 61px);\n  font-weight: 800;\n  letter-spacing: -1.4px;\n  line-height: 1.07;\n}\n\n.ab-hero-content > p {\n  max-width: 730px;\n  margin: 0 0 21px;\n  color: var(--ab-text);\n  font-size: 18px;\n  line-height: 1.75;\n}\n\n.ab-location {\n  display: inline-flex;\n  gap: 8px;\n  align-items: center;\n  padding: 9px 13px;\n  border-radius: 10px;\n  background: rgba(255, 255, 255, 0.78);\n  color: #3d5046;\n  font-size: 14px;\n  font-weight: 700;\n}\n\n.ab-next-card {\n  padding: 27px;\n  border: 1px solid var(--ab-border);\n  border-radius: 22px;\n  background: var(--ab-white);\n  box-shadow: 0 18px 48px rgba(16, 37, 27, 0.11);\n}\n\n.ab-next-label {\n  display: inline-block;\n  margin-bottom: 17px;\n  color: var(--ab-green);\n  font-size: 13px;\n  font-weight: 800;\n  letter-spacing: 0.04em;\n  text-transform: uppercase;\n}\n\n.ab-next-main {\n  display: flex;\n  gap: 20px;\n  align-items: flex-end;\n  justify-content: space-between;\n}\n\n.ab-next-main > div:first-child strong,\n.ab-next-main > div:first-child span {\n  display: block;\n}\n\n.ab-next-main > div:first-child strong {\n  color: var(--ab-dark);\n  font-size: 30px;\n  line-height: 1.15;\n}\n\n.ab-next-main > div:first-child span {\n  margin-top: 4px;\n  color: var(--ab-green);\n  font-size: 22px;\n  font-weight: 800;\n}\n\n.ab-countdown-wrap {\n  text-align: right;\n}\n\n.ab-countdown-wrap span,\n.ab-countdown-wrap strong {\n  display: block;\n}\n\n.ab-countdown-wrap span {\n  margin-bottom: 4px;\n  color: #74837b;\n  font-size: 11px;\n}\n\n.ab-countdown-wrap strong {\n  color: var(--ab-dark);\n  font-size: 20px;\n  letter-spacing: 0.03em;\n}\n\n.ab-next-card > p {\n  margin: 17px 0 0;\n  padding-top: 15px;\n  border-top: 1px solid var(--ab-border);\n  color: #68776f;\n  font-size: 13px;\n  line-height: 1.5;\n}\n\n.ab-today-section,\n.ab-content-section {\n  padding: 66px 0;\n  background: var(--ab-white);\n}\n\n.ab-section-heading {\n  display: flex;\n  gap: 24px;\n  align-items: flex-end;\n  justify-content: space-between;\n  margin-bottom: 27px;\n}\n\n.ab-section-heading h2,\n.ab-content-section h2 {\n  margin: 0;\n  color: var(--ab-dark);\n  font-size: clamp(28px, 4vw, 40px);\n  line-height: 1.18;\n}\n\n.ab-section-heading p {\n  max-width: 700px;\n  margin: 11px 0 0;\n  color: var(--ab-text);\n  font-size: 16px;\n  line-height: 1.7;\n}\n\n.ab-date-display {\n  min-width: 210px;\n  text-align: right;\n}\n\n.ab-date-display strong,\n.ab-date-display span {\n  display: block;\n}\n\n.ab-date-display strong {\n  color: var(--ab-dark);\n  font-size: 15px;\n}\n\n.ab-date-display span {\n  margin-top: 4px;\n  color: #6e7d74;\n  font-size: 13px;\n}\n\n.ab-status {\n  min-height: 21px;\n  margin-bottom: 13px;\n  color: #67776e;\n  font-size: 13px;\n}\n\n.ab-error {\n  margin-bottom: 16px;\n  padding: 13px 15px;\n  border-left: 4px solid #c43b35;\n  border-radius: 10px;\n  background: #fff1f1;\n  color: #8c2823;\n  font-size: 14px;\n  line-height: 1.55;\n}\n\n.ab-prayer-grid {\n  display: grid;\n  grid-template-columns: repeat(6, minmax(0, 1fr));\n  gap: 13px;\n}\n\n.ab-prayer-card {\n  padding: 18px 14px;\n  border: 1px solid var(--ab-border);\n  border-radius: 16px;\n  background: linear-gradient(180deg, #ffffff, #f7fbf9);\n  text-align: center;\n  box-shadow: 0 8px 24px rgba(16, 37, 27, 0.045);\n}\n\n.ab-prayer-card.ab-sunrise {\n  background: linear-gradient(180deg, #fffdf8, var(--ab-gold-soft));\n}\n\n.ab-prayer-icon {\n  display: flex;\n  width: 43px;\n  height: 43px;\n  align-items: center;\n  justify-content: center;\n  margin: 0 auto 11px;\n  border-radius: 13px;\n  background: var(--ab-green-light);\n  font-size: 21px;\n}\n\n.ab-prayer-name,\n.ab-prayer-card time,\n.ab-prayer-card small {\n  display: block;\n}\n\n.ab-prayer-name {\n  color: #41544a;\n  font-size: 14px;\n  font-weight: 700;\n}\n\n.ab-prayer-card time {\n  margin: 7px 0 5px;\n  color: var(--ab-green);\n  font-size: 18px;\n  font-weight: 800;\n  white-space: nowrap;\n}\n\n.ab-prayer-card small {\n  color: #7b8881;\n  font-size: 11px;\n}\n\n.ab-settings {\n  margin-top: 25px;\n  padding: 22px;\n  border: 1px solid var(--ab-border);\n  border-radius: 16px;\n  background: var(--ab-soft);\n}\n\n.ab-settings-heading h3 {\n  margin: 0 0 4px;\n  color: var(--ab-dark);\n  font-size: 19px;\n}\n\n.ab-settings-heading p {\n  margin: 0;\n  color: #6c7b72;\n  font-size: 13px;\n}\n\n.ab-settings-grid {\n  display: grid;\n  grid-template-columns: 1.3fr 0.8fr auto;\n  gap: 12px;\n  align-items: end;\n  margin-top: 17px;\n}\n\n.ab-field label,\n.ab-calendar-controls label {\n  display: block;\n  margin-bottom: 6px;\n  color: #41544a;\n  font-size: 12px;\n  font-weight: 700;\n}\n\n.ab-field select,\n.ab-calendar-controls select {\n  width: 100%;\n  min-height: 46px;\n  padding: 10px 34px 10px 11px;\n  border: 1px solid #cbded4;\n  border-radius: 10px;\n  background: var(--ab-white);\n  color: var(--ab-dark);\n  font: inherit;\n  font-size: 14px;\n}\n\n.ab-field select:focus,\n.ab-calendar-controls select:focus {\n  border-color: var(--ab-green);\n  outline: 3px solid rgba(23, 107, 67, 0.14);\n}\n\n.ab-button {\n  min-height: 46px;\n  padding: 11px 18px;\n  border: 0;\n  border-radius: 10px;\n  background: var(--ab-green);\n  color: var(--ab-white);\n  cursor: pointer;\n  font: inherit;\n  font-size: 14px;\n  font-weight: 700;\n  white-space: nowrap;\n}\n\n.ab-button:hover {\n  background: var(--ab-green-dark);\n}\n\n.ab-button:disabled,\n.ab-field select:disabled,\n.ab-calendar-controls select:disabled {\n  cursor: wait;\n  opacity: 0.6;\n}\n\n.ab-settings-note {\n  margin: 13px 0 0;\n  color: #6b7971;\n  font-size: 12px;\n  line-height: 1.55;\n}\n\n.ab-calendar-section {\n  padding: 66px 0;\n  background: var(--ab-soft);\n}\n\n.ab-calendar-controls {\n  display: grid;\n  grid-template-columns: 145px 105px;\n  gap: 9px;\n}\n\n.ab-table-wrap {\n  overflow-x: auto;\n  border: 1px solid var(--ab-border);\n  border-radius: 15px;\n  background: var(--ab-white);\n  box-shadow: 0 10px 28px rgba(16, 37, 27, 0.05);\n}\n\n.ab-calendar-table {\n  width: 100%;\n  min-width: 800px;\n  border-collapse: collapse;\n}\n\n.ab-calendar-table th,\n.ab-calendar-table td {\n  padding: 13px 12px;\n  border-bottom: 1px solid #e8f0eb;\n  text-align: center;\n  white-space: nowrap;\n}\n\n.ab-calendar-table th {\n  background: var(--ab-green);\n  color: var(--ab-white);\n  font-size: 12px;\n  letter-spacing: 0.02em;\n  text-transform: uppercase;\n}\n\n.ab-calendar-table td {\n  color: #405249;\n  font-size: 13px;\n}\n\n.ab-calendar-table tbody tr:hover {\n  background: #f6fbf8;\n}\n\n.ab-calendar-table tbody tr.ab-today-row {\n  background: #e9f7ef;\n  font-weight: 700;\n}\n\n.ab-calendar-table tbody tr:last-child td {\n  border-bottom: 0;\n}\n\n.ab-calendar-table td:first-child {\n  color: var(--ab-dark);\n  font-weight: 700;\n}\n\n.ab-calendar-table td small {\n  display: block;\n  margin-top: 3px;\n  color: #7a8980;\n  font-size: 10px;\n}\n\n.ab-scroll-note {\n  margin: 10px 0 0;\n  color: #77857d;\n  font-size: 12px;\n}\n\n.ab-content-grid {\n  display: grid;\n  grid-template-columns: minmax(0, 1fr) minmax(300px, 0.58fr);\n  gap: 47px;\n  align-items: start;\n}\n\n.ab-content-grid article > p {\n  margin: 17px 0 0;\n  color: #56675e;\n  font-size: 16px;\n  line-height: 1.8;\n}\n\n.ab-information-card {\n  padding: 25px;\n  border: 1px solid var(--ab-border);\n  border-radius: 17px;\n  background: var(--ab-soft);\n}\n\n.ab-information-card h3 {\n  margin: 0 0 15px;\n  color: var(--ab-dark);\n  font-size: 21px;\n}\n\n.ab-information-card dl {\n  margin: 0;\n}\n\n.ab-information-card dl > div {\n  padding: 12px 0;\n  border-bottom: 1px solid var(--ab-border);\n}\n\n.ab-information-card dl > div:last-child {\n  border-bottom: 0;\n}\n\n.ab-information-card dt {\n  margin-bottom: 3px;\n  color: #74837a;\n  font-size: 11px;\n  font-weight: 700;\n  text-transform: uppercase;\n}\n\n.ab-information-card dd {\n  margin: 0;\n  color: #34483d;\n  font-size: 14px;\n  font-weight: 700;\n}\n\n.ab-soft-section {\n  background: var(--ab-soft);\n}\n\n.ab-explanation-grid {\n  display: grid;\n  grid-template-columns: repeat(3, 1fr);\n  gap: 17px;\n}\n\n.ab-explanation-grid article {\n  padding: 21px;\n  border: 1px solid var(--ab-border);\n  border-radius: 15px;\n  background: var(--ab-white);\n}\n\n.ab-explanation-grid h3 {\n  margin: 0 0 8px;\n  color: var(--ab-dark);\n  font-size: 18px;\n}\n\n.ab-explanation-grid p {\n  margin: 0;\n  color: #5c6d64;\n  font-size: 14px;\n  line-height: 1.65;\n}\n\n.ab-faq-list {\n  display: grid;\n  gap: 11px;\n  max-width: 900px;\n}\n\n.ab-faq {\n  border: 1px solid var(--ab-border);\n  border-radius: 13px;\n  background: var(--ab-white);\n}\n\n.ab-faq summary {\n  position: relative;\n  padding: 17px 50px 17px 19px;\n  color: var(--ab-dark);\n  cursor: pointer;\n  font-size: 16px;\n  font-weight: 700;\n  list-style: none;\n}\n\n.ab-faq summary::-webkit-details-marker {\n  display: none;\n}\n\n.ab-faq summary::after {\n  position: absolute;\n  top: 50%;\n  right: 19px;\n  color: var(--ab-green);\n  content: \"+\";\n  font-size: 23px;\n  transform: translateY(-50%);\n}\n\n.ab-faq[open] summary::after {\n  content: \"\u2212\";\n}\n\n.ab-faq p {\n  margin: 0;\n  padding: 0 19px 18px;\n  color: #5d6d64;\n  font-size: 14px;\n  line-height: 1.7;\n}\n\n.ab-official-note {\n  display: grid;\n  grid-template-columns: 48px 1fr;\n  gap: 16px;\n  margin-top: 30px;\n  padding: 25px;\n  border: 1px solid #d2e7db;\n  border-left: 5px solid var(--ab-green);\n  border-radius: 16px;\n  background: var(--ab-soft);\n}\n\n.ab-note-icon {\n  display: flex;\n  width: 46px;\n  height: 46px;\n  align-items: center;\n  justify-content: center;\n  border-radius: 13px;\n  background: var(--ab-green-light);\n  font-size: 21px;\n}\n\n.ab-official-note h2 {\n  margin-bottom: 7px;\n  font-size: 23px;\n}\n\n.ab-official-note p {\n  max-width: 860px;\n  margin: 0 0 10px;\n  color: #596a60;\n  font-size: 14px;\n  line-height: 1.7;\n}\n\n.ab-official-note a {\n  color: var(--ab-green);\n  font-size: 14px;\n  font-weight: 700;\n  text-decoration: none;\n}\n\n.ab-official-note a:hover {\n  text-decoration: underline;\n}\n\n@media (max-width: 980px) {\n  .ab-prayer-grid {\n    grid-template-columns: repeat(3, 1fr);\n  }\n\n  .ab-explanation-grid {\n    grid-template-columns: repeat(2, 1fr);\n  }\n}\n\n@media (max-width: 820px) {\n  .ab-hero-grid,\n  .ab-content-grid {\n    grid-template-columns: 1fr;\n  }\n\n  .ab-section-heading {\n    display: grid;\n    align-items: start;\n  }\n\n  .ab-date-display {\n    text-align: left;\n  }\n\n  .ab-settings-grid {\n    grid-template-columns: 1fr 1fr;\n  }\n\n  .ab-button {\n    grid-column: 1 \/ -1;\n  }\n}\n\n@media (max-width: 620px) {\n  .ab-hero {\n    padding: 28px 0 43px;\n  }\n\n  .ab-breadcrumb {\n    margin-bottom: 24px;\n  }\n\n  .ab-hero h1 {\n    font-size: 38px;\n    letter-spacing: -0.8px;\n  }\n\n  .ab-hero-content > p {\n    font-size: 16px;\n  }\n\n  .ab-next-main {\n    display: grid;\n  }\n\n  .ab-countdown-wrap {\n    text-align: left;\n  }\n\n  .ab-today-section,\n  .ab-calendar-section,\n  .ab-content-section {\n    padding: 48px 0;\n  }\n\n  .ab-prayer-grid {\n    grid-template-columns: repeat(2, 1fr);\n  }\n\n  .ab-settings-grid,\n  .ab-explanation-grid {\n    grid-template-columns: 1fr;\n  }\n\n  .ab-calendar-controls {\n    grid-template-columns: 1fr 1fr;\n  }\n\n  .ab-official-note {\n    grid-template-columns: 1fr;\n    padding: 21px;\n  }\n}\n<\/style>\n\n<script data-wp-block-html=\"js\">\n(function () {\n  \"use strict\";\n\n  const API_BASE = \"https:\/\/api.aladhan.com\/v1\";\n  const CITY = \"Dubai\";\n  const COUNTRY = \"United Arab Emirates\";\n  const TIMEZONE = \"Asia\/Dubai\";\n  const REQUEST_TIMEOUT = 12000;\n\n  let countdownInterval = null;\n\n  function initializeDubaiPrayerPage() {\n    const page = document.getElementById(\"ab-prayer-page\");\n\n    if (!page) {\n      return;\n    }\n\n    const methodSelect = document.getElementById(\"ab-method\");\n    const schoolSelect = document.getElementById(\"ab-school\");\n    const reloadButton = document.getElementById(\"ab-reload\");\n    const statusBox = document.getElementById(\"ab-status\");\n    const errorBox = document.getElementById(\"ab-error\");\n    const monthSelect = document.getElementById(\"ab-month\");\n    const yearSelect = document.getElementById(\"ab-year\");\n\n    const calendarStatus = document.getElementById(\n      \"ab-calendar-status\"\n    );\n\n    const calendarBody = document.getElementById(\n      \"ab-calendar-body\"\n    );\n\n    const prayerNames = [\n      \"Fajr\",\n      \"Sunrise\",\n      \"Dhuhr\",\n      \"Asr\",\n      \"Maghrib\",\n      \"Isha\"\n    ];\n\n    const countdownNames = [\n      \"Fajr\",\n      \"Dhuhr\",\n      \"Asr\",\n      \"Maghrib\",\n      \"Isha\"\n    ];\n\n    function getDubaiDateParts(offsetDays) {\n      const shiftedDate = new Date(\n        Date.now() + (offsetDays || 0) * 86400000\n      );\n\n      const parts = new Intl.DateTimeFormat(\"en-GB\", {\n        timeZone: TIMEZONE,\n        year: \"numeric\",\n        month: \"2-digit\",\n        day: \"2-digit\"\n      }).formatToParts(shiftedDate);\n\n      const values = {};\n\n      parts.forEach(function (part) {\n        if (part.type !== \"literal\") {\n          values[part.type] = Number(part.value);\n        }\n      });\n\n      return {\n        year: values.year,\n        month: values.month,\n        day: values.day\n      };\n    }\n\n    function getApiDate(dateParts) {\n      return (\n        String(dateParts.day).padStart(2, \"0\") +\n        \"-\" +\n        String(dateParts.month).padStart(2, \"0\") +\n        \"-\" +\n        dateParts.year\n      );\n    }\n\n    function cleanTime(value) {\n      if (!value || typeof value !== \"string\") {\n        return \"--:--\";\n      }\n\n      return value.split(\" \")[0];\n    }\n\n    function formatTime(value) {\n      const cleanValue = cleanTime(value);\n      const parts = cleanValue.split(\":\");\n\n      if (parts.length < 2) {\n        return cleanValue;\n      }\n\n      let hour = parseInt(parts[0], 10);\n      const minute = parts[1];\n\n      if (Number.isNaN(hour)) {\n        return cleanValue;\n      }\n\n      const period = hour >= 12 ? \"PM\" : \"AM\";\n      hour = hour % 12 || 12;\n\n      return hour + \":\" + minute + \" \" + period;\n    }\n\n    function getMethod() {\n      return methodSelect.value || \"16\";\n    }\n\n    function getSchool() {\n      return schoolSelect.value || \"0\";\n    }\n\n    async function fetchJson(url) {\n      const controller = new AbortController();\n\n      const timeoutId = window.setTimeout(function () {\n        controller.abort();\n      }, REQUEST_TIMEOUT);\n\n      try {\n        const response = await fetch(url, {\n          method: \"GET\",\n          headers: {\n            Accept: \"application\/json\"\n          },\n          signal: controller.signal\n        });\n\n        if (!response.ok) {\n          throw new Error(\n            \"The prayer-time service could not be reached.\"\n          );\n        }\n\n        const result = await response.json();\n\n        if (\n          !result ||\n          Number(result.code) !== 200 ||\n          !result.data\n        ) {\n          throw new Error(\n            \"Prayer-time information is unavailable.\"\n          );\n        }\n\n        return result.data;\n      } catch (error) {\n        if (error.name === \"AbortError\") {\n          throw new Error(\n            \"The request took too long. Please check your internet connection.\"\n          );\n        }\n\n        throw error;\n      } finally {\n        window.clearTimeout(timeoutId);\n      }\n    }\n\n    async function fetchDay(dateParts) {\n      const parameters = new URLSearchParams({\n        city: CITY,\n        country: COUNTRY,\n        method: getMethod(),\n        school: getSchool()\n      });\n\n      const url =\n        API_BASE +\n        \"\/timingsByCity\/\" +\n        getApiDate(dateParts) +\n        \"?\" +\n        parameters.toString();\n\n      return fetchJson(url);\n    }\n\n    async function fetchCalendar(year, month) {\n      const parameters = new URLSearchParams({\n        city: CITY,\n        country: COUNTRY,\n        method: getMethod(),\n        school: getSchool()\n      });\n\n      const url =\n        API_BASE +\n        \"\/calendarByCity\/\" +\n        year +\n        \"\/\" +\n        month +\n        \"?\" +\n        parameters.toString();\n\n      return fetchJson(url);\n    }\n\n    function setLoading(isLoading) {\n      reloadButton.disabled = isLoading;\n      methodSelect.disabled = isLoading;\n      schoolSelect.disabled = isLoading;\n\n      reloadButton.textContent = isLoading\n        ? \"Loading...\"\n        : \"Update Timings\";\n    }\n\n    function showError(message) {\n      errorBox.textContent = message;\n      errorBox.hidden = false;\n      statusBox.textContent = \"\";\n    }\n\n    function clearError() {\n      errorBox.textContent = \"\";\n      errorBox.hidden = true;\n    }\n\n    function parseDubaiTime(dateParts, timeValue) {\n      const parts = cleanTime(timeValue).split(\":\");\n\n      return Date.UTC(\n        dateParts.year,\n        dateParts.month - 1,\n        dateParts.day,\n        Number(parts[0]) - 4,\n        Number(parts[1]),\n        0\n      );\n    }\n\n    function startCountdown(\n      prayerName,\n      timeValue,\n      dateParts\n    ) {\n      if (countdownInterval) {\n        window.clearInterval(countdownInterval);\n      }\n\n      const nameElement = document.getElementById(\n        \"ab-next-name\"\n      );\n\n      const timeElement = document.getElementById(\n        \"ab-next-time\"\n      );\n\n      const countdownElement = document.getElementById(\n        \"ab-countdown\"\n      );\n\n      const noteElement = document.getElementById(\n        \"ab-next-note\"\n      );\n\n      const targetTime = parseDubaiTime(\n        dateParts,\n        timeValue\n      );\n\n      nameElement.textContent = prayerName;\n      timeElement.textContent = formatTime(timeValue);\n\n      noteElement.textContent =\n        prayerName === \"Fajr tomorrow\"\n          ? \"The next prayer is tomorrow\u2019s Fajr.\"\n          : \"The next prayer today is \" +\n            prayerName +\n            \".\";\n\n      function updateCountdown() {\n        const difference = targetTime - Date.now();\n\n        if (difference <= 0) {\n          countdownElement.textContent = \"00:00:00\";\n          window.clearInterval(countdownInterval);\n\n          window.setTimeout(function () {\n            loadToday();\n          }, 1500);\n\n          return;\n        }\n\n        const totalSeconds = Math.floor(\n          difference \/ 1000\n        );\n\n        const hours = Math.floor(\n          totalSeconds \/ 3600\n        );\n\n        const minutes = Math.floor(\n          (totalSeconds % 3600) \/ 60\n        );\n\n        const seconds = totalSeconds % 60;\n\n        countdownElement.textContent =\n          String(hours).padStart(2, \"0\") +\n          \":\" +\n          String(minutes).padStart(2, \"0\") +\n          \":\" +\n          String(seconds).padStart(2, \"0\");\n      }\n\n      updateCountdown();\n\n      countdownInterval = window.setInterval(\n        updateCountdown,\n        1000\n      );\n    }\n\n    async function findNextPrayer(\n      todayData,\n      todayParts\n    ) {\n      const now = Date.now();\n\n      for (\n        let index = 0;\n        index < countdownNames.length;\n        index++\n      ) {\n        const prayerName = countdownNames[index];\n\n        const prayerTime =\n          todayData.timings[prayerName];\n\n        const timestamp = parseDubaiTime(\n          todayParts,\n          prayerTime\n        );\n\n        if (timestamp > now) {\n          startCountdown(\n            prayerName,\n            prayerTime,\n            todayParts\n          );\n\n          return;\n        }\n      }\n\n      const tomorrowParts = getDubaiDateParts(1);\n      const tomorrowData = await fetchDay(tomorrowParts);\n\n      startCountdown(\n        \"Fajr tomorrow\",\n        tomorrowData.timings.Fajr,\n        tomorrowParts\n      );\n    }\n\n    function getHijriText(data) {\n      const hijri = data.date?.hijri;\n\n      if (!hijri) {\n        return \"Hijri date unavailable\";\n      }\n\n      if (\n        !hijri.day ||\n        !hijri.month?.en ||\n        !hijri.year\n      ) {\n        return \"Hijri date unavailable\";\n      }\n\n      return (\n        hijri.day +\n        \" \" +\n        hijri.month.en +\n        \" \" +\n        hijri.year +\n        \" AH\"\n      );\n    }\n\n    function displayToday(data, dateParts) {\n      prayerNames.forEach(function (prayerName) {\n        const element = document.getElementById(\n          \"ab-\" + prayerName\n        );\n\n        if (!element) {\n          return;\n        }\n\n        element.textContent = formatTime(\n          data.timings[prayerName]\n        );\n\n        element.setAttribute(\n          \"datetime\",\n          cleanTime(data.timings[prayerName])\n        );\n      });\n\n      document.getElementById(\n        \"ab-gregorian-date\"\n      ).textContent =\n        data.date?.readable || \"Date unavailable\";\n\n      document.getElementById(\n        \"ab-hijri-date\"\n      ).textContent = getHijriText(data);\n\n      statusBox.textContent =\n        \"Dubai prayer times loaded successfully.\";\n\n      findNextPrayer(data, dateParts).catch(\n        function (error) {\n          console.error(\n            \"Next-prayer error:\",\n            error\n          );\n\n          document.getElementById(\n            \"ab-next-note\"\n          ).textContent =\n            \"The next-prayer countdown is temporarily unavailable.\";\n        }\n      );\n    }\n\n    async function loadToday() {\n      const todayParts = getDubaiDateParts(0);\n\n      clearError();\n      setLoading(true);\n\n      statusBox.textContent =\n        \"Loading today\u2019s Dubai prayer times...\";\n\n      try {\n        const data = await fetchDay(todayParts);\n        displayToday(data, todayParts);\n      } catch (error) {\n        console.error(\n          \"Today prayer-time error:\",\n          error\n        );\n\n        showError(\n          error.message ||\n            \"Unable to load today\u2019s prayer times.\"\n        );\n      } finally {\n        setLoading(false);\n      }\n    }\n\n    function populateYears() {\n      const currentYear = getDubaiDateParts(0).year;\n\n      yearSelect.innerHTML = \"\";\n\n      for (\n        let year = currentYear - 1;\n        year <= currentYear + 2;\n        year++\n      ) {\n        const option = document.createElement(\"option\");\n\n        option.value = String(year);\n        option.textContent = String(year);\n\n        if (year === currentYear) {\n          option.selected = true;\n        }\n\n        yearSelect.appendChild(option);\n      }\n    }\n\n    function displayCalendar(\n      data,\n      selectedYear,\n      selectedMonth\n    ) {\n      const todayParts = getDubaiDateParts(0);\n\n      calendarBody.innerHTML = \"\";\n\n      data.forEach(function (dayData) {\n        const row = document.createElement(\"tr\");\n\n        const gregorian =\n          dayData.date.gregorian;\n\n        const hijri =\n          dayData.date.hijri;\n\n        const dayNumber =\n          Number(gregorian.day);\n\n        const sameYear =\n          selectedYear === todayParts.year;\n\n        const sameMonth =\n          selectedMonth === todayParts.month;\n\n        const sameDay =\n          dayNumber === todayParts.day;\n\n        if (sameYear) {\n          if (sameMonth) {\n            if (sameDay) {\n              row.classList.add(\"ab-today-row\");\n            }\n          }\n        }\n\n        const dateCell =\n          document.createElement(\"td\");\n\n        dateCell.textContent =\n          gregorian.day +\n          \" \" +\n          gregorian.month.en.slice(0, 3);\n\n        const hijriSmall =\n          document.createElement(\"small\");\n\n        hijriSmall.textContent =\n          hijri.day +\n          \" \" +\n          hijri.month.en.slice(0, 3);\n\n        dateCell.appendChild(hijriSmall);\n        row.appendChild(dateCell);\n\n        const dayCell =\n          document.createElement(\"td\");\n\n        dayCell.textContent =\n          gregorian.weekday.en;\n\n        row.appendChild(dayCell);\n\n        prayerNames.forEach(\n          function (prayerName) {\n            const cell =\n              document.createElement(\"td\");\n\n            cell.textContent = formatTime(\n              dayData.timings[prayerName]\n            );\n\n            row.appendChild(cell);\n          }\n        );\n\n        calendarBody.appendChild(row);\n      });\n\n      calendarStatus.textContent =\n        \"Monthly Dubai prayer timetable loaded.\";\n    }\n\n    async function loadMonthlyCalendar() {\n      const selectedMonth =\n        Number(monthSelect.value);\n\n      const selectedYear =\n        Number(yearSelect.value);\n\n      monthSelect.disabled = true;\n      yearSelect.disabled = true;\n\n      calendarStatus.textContent =\n        \"Loading monthly Dubai prayer timetable...\";\n\n      try {\n        const data = await fetchCalendar(\n          selectedYear,\n          selectedMonth\n        );\n\n        displayCalendar(\n          data,\n          selectedYear,\n          selectedMonth\n        );\n      } catch (error) {\n        console.error(\n          \"Monthly calendar error:\",\n          error\n        );\n\n        calendarStatus.textContent =\n          error.message ||\n          \"Unable to load the monthly timetable.\";\n      } finally {\n        monthSelect.disabled = false;\n        yearSelect.disabled = false;\n      }\n    }\n\n    function reloadAllTimings() {\n      loadToday();\n      loadMonthlyCalendar();\n    }\n\n    const currentDate = getDubaiDateParts(0);\n\n    populateYears();\n\n    monthSelect.value =\n      String(currentDate.month);\n\n    yearSelect.value =\n      String(currentDate.year);\n\n    reloadButton.addEventListener(\n      \"click\",\n      reloadAllTimings\n    );\n\n    monthSelect.addEventListener(\n      \"change\",\n      loadMonthlyCalendar\n    );\n\n    yearSelect.addEventListener(\n      \"change\",\n      loadMonthlyCalendar\n    );\n\n    loadToday();\n    loadMonthlyCalendar();\n  }\n\n  if (document.readyState === \"loading\") {\n    document.addEventListener(\n      \"DOMContentLoaded\",\n      initializeDubaiPrayerPage\n    );\n  } else {\n    initializeDubaiPrayerPage();\n  }\n})();\n<\/script>\n\n<main id=\"ab-prayer-page\">\n\n  <section class=\"ab-hero\">\n    <div class=\"ab-wrap\">\n\n      <nav class=\"ab-breadcrumb\" aria-label=\"Breadcrumb\">\n        <a href=\"\/\">Home<\/a>\n        <span>\u203a<\/span>\n        <a href=\"\/prayer-times\/\">Prayer Times<\/a>\n        <span>\u203a<\/span>\n        <span>Dubai<\/span>\n      <\/nav>\n\n      <div class=\"ab-hero-grid\">\n\n        <div class=\"ab-hero-content\">\n          <span class=\"ab-badge\">\ud83d\udd4c Dubai Salah Timings<\/span>\n\n          <h1>Dubai Prayer Times Today<\/h1>\n\n          <p>\n            Check today\u2019s Fajr, Sunrise, Dhuhr, Asr, Maghrib and Isha prayer\n            times in Dubai, United Arab Emirates. View the next prayer and\n            complete monthly Salah timetable.\n          <\/p>\n\n          <div class=\"ab-location\">\n            <span aria-hidden=\"true\">\ud83d\udccd<\/span>\n            Dubai, United Arab Emirates\n          <\/div>\n        <\/div>\n\n        <div class=\"ab-next-card\">\n          <span class=\"ab-next-label\">Next prayer<\/span>\n\n          <div class=\"ab-next-main\">\n            <div>\n              <strong id=\"ab-next-name\">Dhuhr<\/strong>\n              <span id=\"ab-next-time\">12:28 PM<\/span>\n            <\/div>\n\n            <div class=\"ab-countdown-wrap\">\n              <span>Time remaining<\/span>\n              <strong id=\"ab-countdown\">--:--:--<\/strong>\n            <\/div>\n          <\/div>\n\n          <p id=\"ab-next-note\">The next prayer today is Dhuhr.<\/p>\n        <\/div>\n\n      <\/div>\n    <\/div>\n  <\/section>\n\n  <section class=\"ab-today-section\">\n    <div class=\"ab-wrap\">\n\n      <div class=\"ab-section-heading\">\n        <div>\n          <span class=\"ab-eyebrow\">Today\u2019s schedule<\/span>\n          <h2>Prayer Times in Dubai Today<\/h2>\n        <\/div>\n\n        <div class=\"ab-date-display\">\n          <strong id=\"ab-gregorian-date\">20 Aug 2026<\/strong>\n          <span id=\"ab-hijri-date\">7 Rab\u012b\u02bf al-awwal 1448 AH<\/span>\n        <\/div>\n      <\/div>\n\n      <div\n        id=\"ab-status\"\n        class=\"ab-status\"\n        role=\"status\"\n        aria-live=\"polite\"\n      >Abu Dhabi prayer times loaded successfully.<\/div>\n\n      <div id=\"ab-error\" class=\"ab-error\" role=\"alert\" hidden><\/div>\n\n      <div class=\"ab-prayer-grid\" id=\"ab-prayer-grid\">\n\n        <article class=\"ab-prayer-card\">\n          <span class=\"ab-prayer-icon\" aria-hidden=\"true\">\ud83c\udf0c<\/span>\n          <span class=\"ab-prayer-name\">Fajr<\/span>\n          <time id=\"ab-Fajr\">4:38 AM<\/time>\n          <small>Dawn prayer<\/small>\n        <\/article>\n\n        <article class=\"ab-prayer-card ab-sunrise\">\n          <span class=\"ab-prayer-icon\" aria-hidden=\"true\">\ud83c\udf05<\/span>\n          <span class=\"ab-prayer-name\">Sunrise<\/span>\n          <time id=\"ab-Sunrise\">5:58 AM<\/time>\n          <small>Sunrise time<\/small>\n        <\/article>\n\n        <article class=\"ab-prayer-card\">\n          <span class=\"ab-prayer-icon\" aria-hidden=\"true\">\u2600\ufe0f<\/span>\n          <span class=\"ab-prayer-name\">Dhuhr<\/span>\n          <time id=\"ab-Dhuhr\">12:28 PM<\/time>\n          <small>Midday prayer<\/small>\n        <\/article>\n\n        <article class=\"ab-prayer-card\">\n          <span class=\"ab-prayer-icon\" aria-hidden=\"true\">\ud83c\udf24\ufe0f<\/span>\n          <span class=\"ab-prayer-name\">Asr<\/span>\n          <time id=\"ab-Asr\">3:54 PM<\/time>\n          <small>Afternoon prayer<\/small>\n        <\/article>\n\n        <article class=\"ab-prayer-card\">\n          <span class=\"ab-prayer-icon\" aria-hidden=\"true\">\ud83c\udf07<\/span>\n          <span class=\"ab-prayer-name\">Maghrib<\/span>\n          <time id=\"ab-Maghrib\">6:54 PM<\/time>\n          <small>Sunset prayer<\/small>\n        <\/article>\n\n        <article class=\"ab-prayer-card\">\n          <span class=\"ab-prayer-icon\" aria-hidden=\"true\">\ud83c\udf19<\/span>\n          <span class=\"ab-prayer-name\">Isha<\/span>\n          <time id=\"ab-Isha\">8:12 PM<\/time>\n          <small>Night prayer<\/small>\n        <\/article>\n\n      <\/div>\n\n      <div class=\"ab-settings\">\n        <div class=\"ab-settings-heading\">\n          <h3>Calculation Settings<\/h3>\n\n          <p>\n            Change the settings if your mosque follows another method.\n          <\/p>\n        <\/div>\n\n        <div class=\"ab-settings-grid\">\n\n          <div class=\"ab-field\">\n            <label for=\"ab-method\">Calculation method<\/label>\n\n            <select id=\"ab-method\">\n              <option value=\"16\">Dubai UAE preset \u2013 Experimental<\/option>\n              <option value=\"8\">Gulf Region<\/option>\n              <option value=\"3\">Muslim World League<\/option>\n              <option value=\"4\">Umm Al-Qura, Makkah<\/option>\n              <option value=\"1\">University of Karachi<\/option>\n            <\/select>\n          <\/div>\n\n          <div class=\"ab-field\">\n            <label for=\"ab-school\">Asr calculation<\/label>\n\n            <select id=\"ab-school\">\n              <option value=\"0\">Standard<\/option>\n              <option value=\"1\">Hanafi<\/option>\n            <\/select>\n          <\/div>\n\n          <button type=\"button\" id=\"ab-reload\" class=\"ab-button\">\n            Update Timings\n          <\/button>\n\n        <\/div>\n\n        <p class=\"ab-settings-note\">\n          These are calculated times. Official Dubai mosque timings may\n          include additional local adjustments.\n        <\/p>\n      <\/div>\n\n    <\/div>\n  <\/section>\n\n  <section class=\"ab-calendar-section\">\n    <div class=\"ab-wrap\">\n\n      <div class=\"ab-section-heading\">\n        <div>\n          <span class=\"ab-eyebrow\">Monthly calendar<\/span>\n\n          <h2>Dubai Monthly Prayer Timetable<\/h2>\n\n          <p>\n            Select a month to see the complete daily prayer schedule for\n            Dubai.\n          <\/p>\n        <\/div>\n\n        <div class=\"ab-calendar-controls\">\n          <div>\n            <label for=\"ab-month\">Month<\/label>\n\n            <select id=\"ab-month\">\n              <option value=\"1\">January<\/option>\n              <option value=\"2\">February<\/option>\n              <option value=\"3\">March<\/option>\n              <option value=\"4\">April<\/option>\n              <option value=\"5\">May<\/option>\n              <option value=\"6\">June<\/option>\n              <option value=\"7\">July<\/option>\n              <option value=\"8\" selected>August<\/option>\n              <option value=\"9\">September<\/option>\n              <option value=\"10\">October<\/option>\n              <option value=\"11\">November<\/option>\n              <option value=\"12\">December<\/option>\n            <\/select>\n          <\/div>\n\n          <div>\n            <label for=\"ab-year\">Year<\/label>\n            <select id=\"ab-year\"><option value=\"2025\">2025<\/option><option value=\"2026\" selected>2026<\/option><option value=\"2027\">2027<\/option><option value=\"2028\">2028<\/option><\/select>\n          <\/div>\n        <\/div>\n      <\/div>\n\n      <div\n        id=\"ab-calendar-status\"\n        class=\"ab-status\"\n        role=\"status\"\n        aria-live=\"polite\"\n      >Monthly Abu Dhabi prayer timetable loaded.<\/div>\n\n      <div class=\"ab-table-wrap\">\n        <table class=\"ab-calendar-table\">\n          <thead>\n            <tr>\n              <th>Date<\/th>\n              <th>Day<\/th>\n              <th>Fajr<\/th>\n              <th>Sunrise<\/th>\n              <th>Dhuhr<\/th>\n              <th>Asr<\/th>\n              <th>Maghrib<\/th>\n              <th>Isha<\/th>\n            <\/tr>\n          <\/thead>\n\n          <tbody id=\"ab-calendar-body\"><tr><td>01 Aug<\/td><td>18 \u1e62 1448 AH<\/td><td>Saturday<\/td><td>4:26 AM<\/td><td>5:50 AM<\/td><td>12:31 PM<\/td><td>3:54 PM<\/td><td>7:09 PM<\/td><td>8:30 PM<\/td><\/tr><tr><td>02 Aug<\/td><td>19 \u1e62 1448 AH<\/td><td>Sunday<\/td><td>4:27 AM<\/td><td>5:51 AM<\/td><td>12:31 PM<\/td><td>3:54 PM<\/td><td>7:08 PM<\/td><td>8:29 PM<\/td><\/tr><tr><td>03 Aug<\/td><td>20 \u1e62 1448 AH<\/td><td>Monday<\/td><td>4:27 AM<\/td><td>5:51 AM<\/td><td>12:31 PM<\/td><td>3:54 PM<\/td><td>7:07 PM<\/td><td>8:28 PM<\/td><\/tr><tr><td>04 Aug<\/td><td>21 \u1e62 1448 AH<\/td><td>Tuesday<\/td><td>4:28 AM<\/td><td>5:52 AM<\/td><td>12:31 PM<\/td><td>3:54 PM<\/td><td>7:07 PM<\/td><td>8:27 PM<\/td><\/tr><tr><td>05 Aug<\/td><td>22 \u1e62 1448 AH<\/td><td>Wednesday<\/td><td>4:29 AM<\/td><td>5:52 AM<\/td><td>12:31 PM<\/td><td>3:54 PM<\/td><td>7:06 PM<\/td><td>8:26 PM<\/td><\/tr><tr><td>06 Aug<\/td><td>23 \u1e62 1448 AH<\/td><td>Thursday<\/td><td>4:29 AM<\/td><td>5:52 AM<\/td><td>12:31 PM<\/td><td>3:54 PM<\/td><td>7:05 PM<\/td><td>8:26 PM<\/td><\/tr><tr><td>07 Aug<\/td><td>24 \u1e62 1448 AH<\/td><td>Friday<\/td><td>4:30 AM<\/td><td>5:53 AM<\/td><td>12:30 PM<\/td><td>3:55 PM<\/td><td>7:05 PM<\/td><td>8:25 PM<\/td><\/tr><tr><td>08 Aug<\/td><td>25 \u1e62 1448 AH<\/td><td>Saturday<\/td><td>4:30 AM<\/td><td>5:53 AM<\/td><td>12:30 PM<\/td><td>3:55 PM<\/td><td>7:04 PM<\/td><td>8:24 PM<\/td><\/tr><tr><td>09 Aug<\/td><td>26 \u1e62 1448 AH<\/td><td>Sunday<\/td><td>4:31 AM<\/td><td>5:54 AM<\/td><td>12:30 PM<\/td><td>3:55 PM<\/td><td>7:03 PM<\/td><td>8:23 PM<\/td><\/tr><tr><td>10 Aug<\/td><td>27 \u1e62 1448 AH<\/td><td>Monday<\/td><td>4:32 AM<\/td><td>5:54 AM<\/td><td>12:30 PM<\/td><td>3:55 PM<\/td><td>7:03 PM<\/td><td>8:22 PM<\/td><\/tr><tr><td>11 Aug<\/td><td>28 \u1e62 1448 AH<\/td><td>Tuesday<\/td><td>4:32 AM<\/td><td>5:55 AM<\/td><td>12:30 PM<\/td><td>3:55 PM<\/td><td>7:02 PM<\/td><td>8:21 PM<\/td><\/tr><tr><td>12 Aug<\/td><td>29 \u1e62 1448 AH<\/td><td>Wednesday<\/td><td>4:33 AM<\/td><td>5:55 AM<\/td><td>12:30 PM<\/td><td>3:55 PM<\/td><td>7:01 PM<\/td><td>8:20 PM<\/td><\/tr><tr><td>13 Aug<\/td><td>30 \u1e62 1448 AH<\/td><td>Thursday<\/td><td>4:34 AM<\/td><td>5:56 AM<\/td><td>12:30 PM<\/td><td>3:54 PM<\/td><td>7:00 PM<\/td><td>8:19 PM<\/td><\/tr><tr><td>14 Aug<\/td><td>1 Rab 1448 AH<\/td><td>Friday<\/td><td>4:34 AM<\/td><td>5:56 AM<\/td><td>12:29 PM<\/td><td>3:54 PM<\/td><td>7:00 PM<\/td><td>8:18 PM<\/td><\/tr><tr><td>15 Aug<\/td><td>2 Rab 1448 AH<\/td><td>Saturday<\/td><td>4:35 AM<\/td><td>5:56 AM<\/td><td>12:29 PM<\/td><td>3:54 PM<\/td><td>6:59 PM<\/td><td>8:17 PM<\/td><\/tr><tr><td>16 Aug<\/td><td>3 Rab 1448 AH<\/td><td>Sunday<\/td><td>4:35 AM<\/td><td>5:57 AM<\/td><td>12:29 PM<\/td><td>3:54 PM<\/td><td>6:58 PM<\/td><td>8:16 PM<\/td><\/tr><tr><td>17 Aug<\/td><td>4 Rab 1448 AH<\/td><td>Monday<\/td><td>4:36 AM<\/td><td>5:57 AM<\/td><td>12:29 PM<\/td><td>3:54 PM<\/td><td>6:57 PM<\/td><td>8:15 PM<\/td><\/tr><tr><td>18 Aug<\/td><td>5 Rab 1448 AH<\/td><td>Tuesday<\/td><td>4:37 AM<\/td><td>5:58 AM<\/td><td>12:29 PM<\/td><td>3:54 PM<\/td><td>6:56 PM<\/td><td>8:14 PM<\/td><\/tr><tr><td>19 Aug<\/td><td>6 Rab 1448 AH<\/td><td>Wednesday<\/td><td>4:37 AM<\/td><td>5:58 AM<\/td><td>12:28 PM<\/td><td>3:54 PM<\/td><td>6:55 PM<\/td><td>8:13 PM<\/td><\/tr><tr class=\"ab-today-row\"><td>20 Aug<\/td><td>7 Rab 1448 AH<\/td><td>Thursday<\/td><td>4:38 AM<\/td><td>5:58 AM<\/td><td>12:28 PM<\/td><td>3:54 PM<\/td><td>6:54 PM<\/td><td>8:12 PM<\/td><\/tr><tr><td>21 Aug<\/td><td>8 Rab 1448 AH<\/td><td>Friday<\/td><td>4:38 AM<\/td><td>5:59 AM<\/td><td>12:28 PM<\/td><td>3:54 PM<\/td><td>6:54 PM<\/td><td>8:11 PM<\/td><\/tr><tr><td>22 Aug<\/td><td>9 Rab 1448 AH<\/td><td>Saturday<\/td><td>4:39 AM<\/td><td>5:59 AM<\/td><td>12:28 PM<\/td><td>3:53 PM<\/td><td>6:53 PM<\/td><td>8:10 PM<\/td><\/tr><tr><td>23 Aug<\/td><td>10 Rab 1448 AH<\/td><td>Sunday<\/td><td>4:40 AM<\/td><td>6:00 AM<\/td><td>12:27 PM<\/td><td>3:53 PM<\/td><td>6:52 PM<\/td><td>8:09 PM<\/td><\/tr><tr><td>24 Aug<\/td><td>11 Rab 1448 AH<\/td><td>Monday<\/td><td>4:40 AM<\/td><td>6:00 AM<\/td><td>12:27 PM<\/td><td>3:53 PM<\/td><td>6:51 PM<\/td><td>8:08 PM<\/td><\/tr><tr><td>25 Aug<\/td><td>12 Rab 1448 AH<\/td><td>Tuesday<\/td><td>4:41 AM<\/td><td>6:00 AM<\/td><td>12:27 PM<\/td><td>3:53 PM<\/td><td>6:50 PM<\/td><td>8:07 PM<\/td><\/tr><tr><td>26 Aug<\/td><td>13 Rab 1448 AH<\/td><td>Wednesday<\/td><td>4:41 AM<\/td><td>6:01 AM<\/td><td>12:27 PM<\/td><td>3:53 PM<\/td><td>6:49 PM<\/td><td>8:05 PM<\/td><\/tr><tr><td>27 Aug<\/td><td>14 Rab 1448 AH<\/td><td>Thursday<\/td><td>4:42 AM<\/td><td>6:01 AM<\/td><td>12:26 PM<\/td><td>3:52 PM<\/td><td>6:48 PM<\/td><td>8:04 PM<\/td><\/tr><tr><td>28 Aug<\/td><td>15 Rab 1448 AH<\/td><td>Friday<\/td><td>4:42 AM<\/td><td>6:01 AM<\/td><td>12:26 PM<\/td><td>3:52 PM<\/td><td>6:47 PM<\/td><td>8:03 PM<\/td><\/tr><tr><td>29 Aug<\/td><td>16 Rab 1448 AH<\/td><td>Saturday<\/td><td>4:43 AM<\/td><td>6:02 AM<\/td><td>12:26 PM<\/td><td>3:52 PM<\/td><td>6:46 PM<\/td><td>8:02 PM<\/td><\/tr><tr><td>30 Aug<\/td><td>17 Rab 1448 AH<\/td><td>Sunday<\/td><td>4:43 AM<\/td><td>6:02 AM<\/td><td>12:25 PM<\/td><td>3:52 PM<\/td><td>6:45 PM<\/td><td>8:01 PM<\/td><\/tr><tr><td>31 Aug<\/td><td>18 Rab 1448 AH<\/td><td>Monday<\/td><td>4:44 AM<\/td><td>6:03 AM<\/td><td>12:25 PM<\/td><td>3:51 PM<\/td><td>6:44 PM<\/td><td>8:00 PM<\/td><\/tr><\/tbody>\n        <\/table>\n      <\/div>\n\n      <p class=\"ab-scroll-note\">\n        On mobile, move the table left or right to see all prayer times.\n      <\/p>\n\n    <\/div>\n  <\/section>\n\n  <section class=\"ab-content-section\">\n    <div class=\"ab-wrap\">\n\n      <div class=\"ab-content-grid\">\n\n        <article>\n          <span class=\"ab-eyebrow\">Daily Salah in Dubai<\/span>\n\n          <h2>About Dubai Prayer Times<\/h2>\n\n          <p>\n            Prayer times in Dubai change slightly every day because they are\n            connected to the position of the sun. Fajr begins before sunrise,\n            Dhuhr begins after midday, Asr is in the afternoon, Maghrib begins\n            after sunset and Isha begins at night.\n          <\/p>\n\n          <p>\n            This page helps residents, workers and visitors check Dubai Salah\n            times for areas such as Deira, Bur Dubai, Downtown Dubai, Jumeirah,\n            Business Bay and Dubai Marina.\n          <\/p>\n\n          <p>\n            Small timing differences may occur across Dubai or when different\n            calculation settings are used. Follow the timetable provided by\n            your local mosque for congregational prayer.\n          <\/p>\n        <\/article>\n\n        <aside class=\"ab-information-card\">\n          <h3>Dubai Prayer Information<\/h3>\n\n          <dl>\n            <div>\n              <dt>Location<\/dt>\n              <dd>Dubai, United Arab Emirates<\/dd>\n            <\/div>\n\n            <div>\n              <dt>Timezone<\/dt>\n              <dd>Asia\/Dubai \u2013 UTC+4<\/dd>\n            <\/div>\n\n            <div>\n              <dt>Daily prayers<\/dt>\n              <dd>Fajr, Dhuhr, Asr, Maghrib and Isha<\/dd>\n            <\/div>\n\n            <div>\n              <dt>Official Dubai authority<\/dt>\n              <dd>IACAD<\/dd>\n            <\/div>\n          <\/dl>\n        <\/aside>\n\n      <\/div>\n    <\/div>\n  <\/section>\n\n  <section class=\"ab-content-section ab-soft-section\">\n    <div class=\"ab-wrap\">\n\n      <div class=\"ab-section-heading\">\n        <div>\n          <span class=\"ab-eyebrow\">Helpful information<\/span>\n          <h2>Understanding Dubai Salah Times<\/h2>\n        <\/div>\n      <\/div>\n\n      <div class=\"ab-explanation-grid\">\n\n        <article>\n          <h3>Fajr time in Dubai<\/h3>\n          <p>\n            Fajr is the first prayer and begins at dawn before sunrise. Its\n            calculated time depends on the selected Fajr angle.\n          <\/p>\n        <\/article>\n\n        <article>\n          <h3>Dhuhr time in Dubai<\/h3>\n          <p>\n            Dhuhr begins after the sun passes its highest point during the\n            middle of the day.\n          <\/p>\n        <\/article>\n\n        <article>\n          <h3>Asr time in Dubai<\/h3>\n          <p>\n            Asr is the afternoon prayer. Standard and Hanafi calculations may\n            show different starting times.\n          <\/p>\n        <\/article>\n\n        <article>\n          <h3>Maghrib time in Dubai<\/h3>\n          <p>\n            Maghrib begins shortly after sunset. During Ramadan, it also marks\n            the beginning of the daily fasting break.\n          <\/p>\n        <\/article>\n\n        <article>\n          <h3>Isha time in Dubai<\/h3>\n          <p>\n            Isha begins at night after evening twilight. Its calculation can\n            differ according to the selected method.\n          <\/p>\n        <\/article>\n\n        <article>\n          <h3>Friday prayer in Dubai<\/h3>\n          <p>\n            Confirm the current Friday congregational prayer arrangements\n            with IACAD or the Dubai mosque you plan to attend.\n          <\/p>\n        <\/article>\n\n      <\/div>\n    <\/div>\n  <\/section>\n\n  <section class=\"ab-content-section\">\n    <div class=\"ab-wrap\">\n\n      <div class=\"ab-section-heading\">\n        <div>\n          <span class=\"ab-eyebrow\">Common questions<\/span>\n          <h2>Dubai Prayer Times FAQs<\/h2>\n        <\/div>\n      <\/div>\n\n      <div class=\"ab-faq-list\">\n\n        <details class=\"ab-faq\">\n          <summary>What are today\u2019s prayer times in Dubai?<\/summary>\n\n          <p>\n            Today\u2019s Fajr, Sunrise, Dhuhr, Asr, Maghrib and Isha times are\n            displayed at the top of this page and updated daily.\n          <\/p>\n        <\/details>\n\n        <details class=\"ab-faq\">\n          <summary>What is the official source for Dubai prayer times?<\/summary>\n\n          <p>\n            Dubai\u2019s official prayer timings are provided by the Islamic\n            Affairs and Charitable Activities Department, known as IACAD.\n          <\/p>\n        <\/details>\n\n        <details class=\"ab-faq\">\n          <summary>Why are my mosque\u2019s times slightly different?<\/summary>\n\n          <p>\n            Your mosque may follow official local adjustments or a different\n            calculation method. Follow your mosque for congregational prayer.\n          <\/p>\n        <\/details>\n\n        <details class=\"ab-faq\">\n          <summary>What is the difference between Standard and Hanafi Asr?<\/summary>\n\n          <p>\n            They use different shadow-length rules to determine when Asr\n            begins. Choose the method followed by your mosque.\n          <\/p>\n        <\/details>\n\n        <details class=\"ab-faq\">\n          <summary>Are Sunrise and Fajr the same?<\/summary>\n\n          <p>\n            No. Fajr begins before sunrise. Sunrise is displayed separately\n            and is not one of the five obligatory daily prayers.\n          <\/p>\n        <\/details>\n\n      <\/div>\n\n      <div class=\"ab-official-note\">\n        <div class=\"ab-note-icon\" aria-hidden=\"true\">\u2139\ufe0f<\/div>\n\n        <div>\n          <h2>Important Accuracy Note<\/h2>\n\n          <p>\n            These are automatically calculated prayer times and may differ\n            slightly from official Dubai timings. Confirm important timings\n            with your local mosque or Dubai\u2019s Islamic Affairs and Charitable\n            Activities Department.\n          <\/p>\n\n          <a href=\"https:\/\/iacad.gov.ae\/en\/prayer-times\" target=\"_blank\" rel=\"noopener noreferrer\">\n            Check official Dubai prayer timings \u2192\n          <\/a>\n        <\/div>\n      <\/div>\n\n    <\/div>\n  <\/section>\n\n<\/main>\n","protected":false},"excerpt":{"rendered":"<p>Home \u203a Prayer Times \u203a Dubai \ud83d\udd4c Dubai Salah Timings Dubai Prayer Times Today Check today\u2019s Fajr, Sunrise, Dhuhr, Asr, Maghrib and Isha prayer times in Dubai, United Arab Emirates. View the next prayer and complete monthly Salah timetable. \ud83d\udccd Dubai, United Arab Emirates Next prayer Dhuhr 12:28 PM Time remaining &#8211;:&#8211;:&#8211; The next prayer&#8230;<\/p>","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_kad_blocks_custom_css":"","_kad_blocks_head_custom_js":"","_kad_blocks_body_custom_js":"","_kad_blocks_footer_custom_js":"","_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"_kad_post_classname":"","footnotes":""},"class_list":["post-214","page","type-page","status-publish","hentry"],"taxonomy_info":[],"featured_image_src_large":false,"author_info":{"display_name":"kashi883@gmail.com","author_link":"https:\/\/oks.digital\/ar\/author\/kashi883gmail-com\/"},"comment_info":0,"_links":{"self":[{"href":"https:\/\/oks.digital\/ar\/wp-json\/wp\/v2\/pages\/214","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/oks.digital\/ar\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/oks.digital\/ar\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/oks.digital\/ar\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/oks.digital\/ar\/wp-json\/wp\/v2\/comments?post=214"}],"version-history":[{"count":1,"href":"https:\/\/oks.digital\/ar\/wp-json\/wp\/v2\/pages\/214\/revisions"}],"predecessor-version":[{"id":215,"href":"https:\/\/oks.digital\/ar\/wp-json\/wp\/v2\/pages\/214\/revisions\/215"}],"wp:attachment":[{"href":"https:\/\/oks.digital\/ar\/wp-json\/wp\/v2\/media?parent=214"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}