تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[كود] اريد كودجافا نافذه تخرج بوقت بدون تحديث الصفحه
#8
(29-03-26, 01:24 AM)nnnjk كتب : اقصد اظهار التنبيه بدون تحديث الصفحة يعني مثلا التنبيه الساعه 03:15 دخل الزائر الصفحة الساعه 03:12 بعد 3 دقائق من دخوله الصفحه يخرج التنبيه بدون ان يحدث الصفحه

الحل: استخدام setTimeout ديناميكي بدلاً من setInterval
بحيث نحسب فارق التوقيت و نشغل التنبيه تلقائياً بعد هذا الفرق.

PHP كود :
<!DOCTYPE html>
<
html lang="ar">
<
head>
<
meta charset="UTF-8">
<
title>تنبيه صلاة الفجر</title>
<
style>
#overlay {
    displaynone;
    positionfixed;
    width100%;
    height100%;
    backgroundrgba(0,0,0,0.5);
    top0;
    left0;
}
#popup {
    displaynone;
    positionfixed;
    top50%;
    left50%;
    transformtranslate(-50%, -50%);
    background#fff;
    padding20px;
    border-radius10px;
    text-aligncenter;
}
#countdown {
    font-size18px;
    margin-top20px;
    text-aligncenter;
}
button {
    margin-top10px;
}
</
style>
</
head>
<
body>

<
div id="overlay"></div>

<
div id="popup">
    <h3>تنبيه صلاة الفجر</h3>
    <p>حان الآن وقت صلاة الفجر</p>
    <button onclick="closePopup()">إغلاق</button>
</
div>

<
div id="countdown"></div>

<
script>
const 
fajrTime "05:10";

function 
showPopup() {
    document.getElementById("popup").style.display "block";
    document.getElementById("overlay").style.display "block";
}

function 
closePopup() {
    document.getElementById("popup").style.display "none";
    document.getElementById("overlay").style.display "none";
}

function 
updateCountdown() {
    let now = new Date();
    let [hourminute] = fajrTime.split(":");
    let fajrDate = new Date();
    fajrDate.setHours(parseInt(hour));
    fajrDate.setMinutes(parseInt(minute));
    fajrDate.setSeconds(0);
    if (fajrDate now) {
        fajrDate.setDate(fajrDate.getDate() + 1);
    }
    let diff fajrDate now;
    let hours Math.floor(diff 1000 60 60);
    let minutes Math.floor((diff 1000 60) % 60);
    let seconds Math.floor((diff 1000) % 60);
    document.getElementById("countdown").textContent =
        `الوقت المتبقي لصلاة الفجر: ${hours} ساعة، ${minutes} دقيقة، ${seconds} ثانية`;
}

function 
scheduleFajr() {
    let now = new Date();
    let [hourminute] = fajrTime.split(":");
    let fajrDate = new Date();
    fajrDate.setHours(parseInt(hour));
    fajrDate.setMinutes(parseInt(minute));
    fajrDate.setSeconds(0);
    if (fajrDate now) {
        fajrDate.setDate(fajrDate.getDate() + 1);
    }
    let diff fajrDate now;
    setTimeout(showPopupdiff);
}

// تحديث العد التنازلي كل ثانية
setInterval(updateCountdown1000);

scheduleFajr();
updateCountdown();
</
script>

</
body>
</
html
[صورة مرفقة: 177461173141861.gif]
الرد }}}
تم الشكر بواسطة: nnnjk


الردود في هذا الموضوع
RE: اريد كودجافا نافذه تخرج بوقت بدون تحديث الصفحه - بواسطة Amir_Alzubidy - 29-03-26, 01:39 AM

المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [كود] اريد كود جافا مضى من الوقت على تاريخ معين nnnjk 7 495 28-03-26, 05:05 AM
آخر رد: nnnjk
  [كود] اريد كود جافا نافذه تخرج بين وقتين nnnjk 12 747 24-03-26, 10:20 PM
آخر رد: Amir_Alzubidy

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم