Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Показ блока по часам, минутам, и дням недели (https://javascript.ru/forum/misc/65599-pokaz-bloka-po-chasam-minutam-i-dnyam-nedeli.html)

Tivok 28.10.2016 14:34

Показ блока по часам, минутам, и дням недели
 
Здравствуйте уважаемые гуру. Помогите разобраться!

Не срабатывает написанный скрипт.
Цель такая, показ определенного блока в зависимости от дня недели и времени суток (часы, минуты)
т.е. пн-пт с 10:00 до 12:00, в остальное время показывать #block-block-1

То он работает, то не работает.
Сейчас всегда срабатывает #block-block-1 не зависимо от времени и дню недели :(
Что же я не так делаю?
Вот мой пример:

$(function() {
var d = new Date()
var day = d.getDay()
var time = d.getHours()
var minutes = d.getMinutes()
if (day == 1 && time >= 9 && minutes >= 10 && time < 12 && minutes < 00){
$("#block-block-14").css("display", "block");
} else if (day == 2 && time >= 9 && minutes >= 10 && time < 12 && minutes < 00) {
$("#block-block-14").css("display", "block");
} else if (day == 3 && time >= 9 && minutes >= 10 && time < 12 && minutes < 00) {
$("#block-block-14").css("display", "block");
} else if (day == 4 && time >= 9 && minutes >= 10 && time < 12 && minutes < 00) {
$("#block-block-14").css("display", "block");
} else if (day == 5 && time >= 9 && minutes >= 10 && time < 12 && minutes < 00) {
$("#block-block-14").css("display", "block");
} else {
$("#block-block-1").css("display", "block");
}});

рони 28.10.2016 14:47

Цитата:

Сообщение от Tivok
minutes < 00

это как? машина времени в прошлое?

Tivok 28.10.2016 15:51

Цитата:

Сообщение от рони (Сообщение 433246)
это как? машина времени в прошлое?

Ну с 9:10 до 12:00 а как же указать меньше 12 часов 00 минут?

Tivok 28.10.2016 16:01

или допустим больше или равно 9:10 или меньше 12:30

рони 28.10.2016 16:10

Tivok,
$(function() {
var d = new Date();
var day = d.getDay();
var time = d.getHours();
var minutes = d.getMinutes();
time *= 100;
time += minutes;
if (day >= 1 && day <= 5 && time >= 910 && time < 1200  ){
$("#block-block-14").css("display", "block");
}
else {
$("#block-block-1").css("display", "block");
}});

Tivok 28.10.2016 16:10

Что то я совсем запутался с этими больше, меньше, равно.

Tivok 28.10.2016 16:16

Цитата:

Сообщение от рони (Сообщение 433258)
Tivok,
$(function() {
var d = new Date();
var day = d.getDay();
var time = d.getHours();
var minutes = d.getMinutes();
time *= 100;
time += minutes;
if (day >= 1 && day <= 5 && time >= 910 && time < 1200  ){
$("#block-block-14").css("display", "block");
}
else {
$("#block-block-1").css("display", "block");
}});

Ничего себе вот прямо так все 910 и 1200 :blink:

а что это указывает?
time *= 100;
time += minutes;

Tivok 28.10.2016 16:30

Супер! Работает! 2 дня мучился, прочитал километр инфы по js, так и не смог.
СПАСИБО ВАМ!!!

рони 28.10.2016 17:32

Цитата:

Сообщение от Tivok
а что это указывает?
time *= 100;
time += minutes;

предположим что сейчас 10 часов 24 минуты
var time = 10;
var minutes = 24;
time *= 100;// 1000
 time += minutes;//1024
alert(time)

Tivok 28.10.2016 17:54

аа. умножить на 100 и плюс минуты. а как быть с временем до 00:00. Так и указывать < 0000 ?
или < 0

рони 28.10.2016 18:07

Цитата:

Сообщение от Tivok
а как быть с временем до 00:00.

time < 2400


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