Search code examples
javascriptgetdate

document.write for specific time


I programmed this to display some images for a set time. it was supposed to display from Midnight on 12/2 EST to Midnight on 12/3 EST. When i checked it at Midnight on 12/2 it was working, when i checked this morning it had died. can you tell me where my error is?

 <script type="text/javascript">

 var banner = new Array();
 banner[0] = "";
 banner[1] = "";
 banner[2] = "";
 banner[3] = "";
 banner[4] = "";
 banner[5] = "";
 banner[6] = "";
 var d = new Date();
 if ((d.getUTCDate() >= 2 && d.getUTCHours() >= 5) && (d.getUTCDate() <= 4 && d.getUTCHours() <=5)) 
 {
 document.write(banner [0], banner [1], banner [6], banner [5])}  
 else
 {
 document.write(banner [6], banner [5], banner [4], banner[1])
 }
 </script>

Solution

  • (d.getUTCDate() >= 2 && d.getUTCHours() >= 5) refers to 12/2 5:00am to 12/3 0:00am

    (d.getUTCDate() <= 4 && d.getUTCHours() <= 5) refers to 12/4 0:00am to 12/4 5:00am

    12/3 0:00am to 12/4 0:00am missing,

    Therefore:

    var banner = new Array();
     banner[0] = "0";
     banner[1] = "1";
     banner[2] = "2";
     banner[3] = "3";
     banner[4] = "4";
     banner[5] = "5";
     banner[6] = "6";
     var d = new Date();
     if ((d.getUTCDate() == 3)||(d.getUTCDate() >= 2 && d.getUTCHours() >= 5) && (d.getUTCDate() <= 4 && d.getUTCHours() <=5)) 
     {
     document.write(banner [0], banner [1], banner [6], banner [5])}  
     else
     {
         alert(d.getUTCHours())
     document.write(banner [6], banner [5], banner [4], banner[1])
     }