Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Автообновление сайта по заданному времени! (https://javascript.ru/forum/misc/45389-avtoobnovlenie-sajjta-po-zadannomu-vremeni.html)

HelpMe01 26.02.2014 16:43

Автообновление сайта по заданному времени!
 
Всем привет, прошу помощи. Мне нужно сделать так чтобы страница обновлялась автоматически например в 12 часов ночи и т.д. Вот допустим пример, я не смог сделать на определённое время и сделал интервальный:
if (hours>=8 && hours<9) setTimeout(function(){location.reload();}, 3600000);

То есть если допустим наступит 8 часов утра то запускается таймер и в 9 часов (по идее) должно произойти автообновление. Но она не происходит по скольку таймер берёт отсчёт от самого пользователя который заходит на сайт. Допустим я зашёл на сайт в 8:20 и вместе со мной запускается таймер и получается что обновление будет в 09:20. А мне нужно именно вне зависимости когда зайдёт пользователь, таймер шёл. Как это сделать???? :help: :help:

HelpMe01 26.02.2014 16:45

Пожалуйста помогите :help:

deivan 26.02.2014 16:51

вообще неясно, что вы хотите...
что вы понимаете под термином "обновлялась страница"? релоад страницы на клиенте, или смена контента страницы на хосте?..

HelpMe01 26.02.2014 16:54

Извините забыл уточнить мне надо чтобы страница на сайте обвновлялась

deivan 26.02.2014 17:05

мля, да НА КЛИЕНТЕ или НА ХОСТЕ??????

HelpMe01 26.02.2014 17:10

не понял причём тут клиент или хост, мне на сайт нужно!!!!!!!!!

HelpMe01 26.02.2014 18:29

Хотя бы скажите как сделать так чтобы страница обновилась один раз, допустим если сделать location.reload она будет обновляться постоянно без перерыва. А мне хотя бы нужно узнать как чтобы обновилась один раз в одно время и всё на этом

kostyanet 27.02.2014 05:46

<meta http-equiv="refresh" content="43200">

кажные 12 часов

kostyanet 27.02.2014 05:53

Цитата:

Сообщение от HelpMe01
А мне нужно именно вне зависимости когда зайдёт пользователь, таймер шёл.

Он всегда идет. Берите время юзера и считайте.

Например обновление должно произойти в 8:00, скрипт определил что у юзера 12:45, сколько осталось часов и минут до 8:00 по местному?

Если по-местному не канает - берите время сервера, получайте смещение и далее по тексту выше.

HelpMe01 27.02.2014 06:48

Вы не поняли меня, я начинающий в javascript и вот что я грубо говоря натворил:

<script type="text/javascript">
now=new Date(); 
var hours=now.getHours() 
var days=now.getDay();
var min=now.getMinutes();   
var sec=now.getSeconds();                            
var text 
var myDate = '0';
var current = new Date;

                            if (hours>=9 && hours<10 && days>=1 && days<6) document.write("<center><b>Офис<span style='color:blue;font:16px Tahoma;'> <b>ОТКРЫТ</b></span>, до закрытия осталось<span style='color:orange;font:16px Tahoma;'><b> 9 часов</b></span></b></center>");
                            if (hours>=10 && hours<11 && days>=1 && days<6) document.write("<center><b>Офис<span style='color:blue;font:16px Tahoma;'> <b>ОТКРЫТ</b></span>, до закрытия осталось<span style='color:orange;font:16px Tahoma;'><b> 8 часов</b></span></b></center>");  
                            if (hours>=11 && hours<12 && days>=1 && days<6) document.write("<center><b>Офис<span style='color:blue;font:16px Tahoma;'> <b>ОТКРЫТ</b></span>, до закрытия осталось<span style='color:orange;font:16px Tahoma;'><b> 7 часов</b></span></b></center>");       
                            if (hours>=12 && hours<13 && days>=1 && days<6) document.write("<center><b>Офис<span style='color:blue;font:16px Tahoma;'> <b>ОТКРЫТ</b></span>, до закрытия осталось<span style='color:orange;font:16px Tahoma;'><b> 6 часов</b></span></b></center>");
                            if (hours>=13 && hours<14 && days>=1 && days<6) document.write("<center><b>Офис<span style='color:blue;font:16px Tahoma;'> <b>ОТКРЫТ</b></span>, до закрытия осталось<span style='color:orange;font:16px Tahoma;'><b> 5 часов</b></span></b></center>");
                            if (hours>=14 && hours<15 && days>=1 && days<6) document.write("<center><b>Офис<span style='color:blue;font:16px Tahoma;'> <b>ОТКРЫТ</b></span>, до закрытия осталось<span style='color:orange;font:16px Tahoma;'><b> 4 часа</b></span></b></center>");
                            if (hours>=15 && hours<16 && days>=1 && days<6) document.write("<center><b>Офис<span style='color:blue;font:16px Tahoma;'> <b>ОТКРЫТ</b></span>, до закрытия осталось<span style='color:orange;font:16px Tahoma;'><b> 3 часа</b></span></b></center>");
                            if (hours>=16 && hours<17 && days>=1 && days<6) document.write("<center><b>Офис <span style='color:blue;font:16px Tahoma;'> <b>ОТКРЫТ</b></span>, до закрытия осталось<span style='color:orange;font:16px Tahoma;'><b> 2 часа</b></span></b></center>");
                            if (hours>=17 && hours<18 && days>=1 && days<6 && min>=1 && min<30) document.write("<center><b>Офис<span style='color:blue;font:16px Tahoma;'> <b>ОТКРЫТ</b></span>, до закрытия остался<span style='color:orange;font:16px Tahoma;'><b> 1 час</b></span></b></center>");
                            if (hours>=17 && hours<18 && days>=1 && days<6 && min>=30 && min<60) document.write("<center><b>Офис<span style='color:blue;font:16px Tahoma;'> <b>ОТКРЫТ</b></span>, до закрытия осталось<span style='color:orange;font:16px Tahoma;'><b> 30 минут</b></span></b></center>");
                            if (hours>=18 && hours<19 && days>=1 && days<6) document.write("<center><b>Офис<span style='color:red;font:16px Tahoma;'> <b>ЗАКРЫТ</b></span>, до открытия осталось<span style='color:orange;font:16px Tahoma;'><b> 15 часов</b></span></b></center>");
                            if (hours>=19 && hours<20 && days>=1 && days<6) document.write("<center><b>Офис<span style='color:red;font:16px Tahoma;'> <b>ЗАКРЫТ</b></span>, до открытия осталось<span style='color:orange;font:16px Tahoma;'><b> 14 часов</b></span></b></center>");
                            if (hours>=20 && hours<21 && days>=1 && days<6) document.write("<center><b>Офис<span style='color:red;font:16px Tahoma;'> <b>ЗАКРЫТ</b></span>, до открытия осталось<span style='color:orange;font:16px Tahoma;'><b> 13 часов</b></span></b></center>");
                            if (hours>=21 && hours<22 && days>=1 && days<6) document.write("<center><b>Офис<span style='color:red;font:16px Tahoma;'> <b>ЗАКРЫТ</b></span>, до открытия осталось<span style='color:orange;font:16px Tahoma;'><b> 12 часов</b></span></b></center>");
                            if (hours>=22 && hours<23 && days>=1 && days<6) document.write("<center><b>Офис<span style='color:red;font:16px Tahoma;'> <b>ЗАКРЫТ</b></span>, до открытия осталось<span style='color:orange;font:16px Tahoma;'><b> 11 часов</b></span></b></center>");
                            if (hours>=23 && hours<24 && days>=1 && days<6) document.write("<center><b>Офис<span style='color:red;font:16px Tahoma;'> <b>ЗАКРЫТ</b></span>, до открытия осталось<span style='color:orange;font:16px Tahoma;'><b> 10 часа</b></span></b></center>");
                            if (hours>=24 && hours<1 && days>=1 && days<6) document.write("<center><b>Офис<span style='color:red;font:16px Tahoma;'> <b>ЗАКРЫТ</b></span>, до открытия осталось<span style='color:orange;font:16px Tahoma;'><b> 9 часов</b></span></b></center>");
                            if (hours>=1 && hours<2 && days>=1 && days<6) document.write("<center><b>Офис<span style='color:red;font:16px Tahoma;'> <b>ЗАКРЫТ</b></span>, до открытия осталось<span style='color:orange;font:16px Tahoma;'><b> 8 часов</b></span></b></center>"); 
                            if (hours>=2 && hours<3 && days>=1 && days<6) document.write("<center><b>Офис<span style='color:red;font:16px Tahoma;'> <b>ЗАКРЫТ</b></span>, до открытия осталось<span style='color:orange;font:16px Tahoma;'><b> 7 часов</b></span></b></center>"); 
                            if (hours>=3 && hours<4 && days>=1 && days<6) document.write("<center><b>Офис<span style='color:red;font:16px Tahoma;'> <b>ЗАКРЫТ</b></span>, до открытия осталось<span style='color:orange;font:16px Tahoma;'><b> 6 часов</b></span></b></center>"); 
                            if (hours>=4 && hours<5 && days>=1 && days<6) document.write("<center><b>Офис<span style='color:red;font:16px Tahoma;'> <b>ЗАКРЫТ</b></span>, до открытия осталось<span style='color:orange;font:16px Tahoma;'><b> 5 часов</b></span></b></center>"); 
                            if (hours>=5 && hours<6 && days>=1 && days<6) document.write("<center><b>Офис<span style='color:red;font:16px Tahoma;'> <b>ЗАКРЫТ</b></span>, до открытия осталось<span style='color:orange;font:16px Tahoma;'><b> 4 часа</b></span></b></center>"); 
                            if (hours>=6 && hours<7 && days>=1 && days<6) document.write("<center><b>Офис<span style='color:red;font:16px Tahoma;'> <b>ЗАКРЫТ</b></span>, до открытия осталось<span style='color:orange;font:16px Tahoma;'><b> 3 часов</b></span></b></center>"); 
                            if (hours>=7 && hours<8 && days>=1 && days<6) document.write("<center><b>Офис<span style='color:red;font:16px Tahoma;'> <b>ЗАКРЫТ</b></span>, до открытия осталось<span style='color:orange;font:16px Tahoma;'><b> 2 часа</b></span></b></center>"); 
                            if (hours>=8 && hours<9 && days>=1 && days<6) document.write("<center><b>Офис<span style='color:red;font:16px Tahoma;'> <b>ЗАКРЫТ</b></span>, до открытия остался<span style='color:orange;font:16px Tahoma;'><b> 1 час</b></span></b></center>");                             
                            if (days=0) document.write("<center><b><span style='color:green;font:16px Tahoma;'>Офис ЗАКРЫТ, нерабочий день! Открытие в Понедельник</span><span style='color:orange;font:16px Tahoma;'><b> 09:00</b></span></b></center>");
        </script>


Вот как то так, у меня каждый час в боковом блоке выходит надпись "Офис закрыт/открыт до открытия/закрытия сколько то часов". Вот как допустим наступает 16:00 у меня выходит надпись офис открыт до закрытия осталось 2 часа, но она выходит в том случае если пользователь обновит страницу, иными словами она не идёт как обратный отсчёт это как php надо постоянно обновлять страницу чтобы результат менялся, я хочу сделать так чтобы допустим выйдет текст "Офис открыт, до закрытия осталось 2 часа" И сайт обновлялся. Вот почему мне нужно такое обновление


Часовой пояс GMT +3, время: 21:38.