Нужна помощь, текст в зависимости от времени и дня недели
Всем доброго времени суток.
Нужна ваша помощь. Есть скрипт, который выводит сообщение в зависимости от времени и дня недели. Например текст: Сегодня понедельник с 9:00 до 10:00 проходит детское мероприятие Данный текст показывается именно в понедельник с 9:00 до 10:00. Вывод происходит данной строчкой: //(1) это порядковый номер недели 1 : [ [9, 10, "red", 'Сегодня понедельник с 9:00 до 10:00 проходит детское мероприятие'], И.Т.Д....... ] Как сделать так, что бы можно было управлять еще и минутами? Например: Сегодня понедельник с 9:15 до 10:45 проходит детское мероприятие Что бы сообщение показывалось именно в это время. И выводилось бы приблизительно так: 1 : [ [9:15, 10:45, "red", 'Сегодня понедельник с 9:00 до 10:00 проходит детское мероприятие'], или [9,15, 10,45, "red", 'Сегодня понедельник с 9:00 до 10:00 проходит детское мероприятие'], ] Метод вывода в принципе не имеет значения, главное что бы работало. Привожу скрипт целиком, он работает, но только по часам, в нем нет функционала для управления минутами(
var data = {
0 : [
[8, 9, "red", 'Текст который отображается с 8:00 до 9:00 в Воскресенье'],
[9, 10, "red", 'Текст который отображается с 9:00 до 10:00 в Воскресенье'],
И.Т.Д.......
],
1 : [
[8, 9, "red", 'Текст который отображается с 8:00 до 9:00 в Понедельник'],
[9, 10, "red", 'Текст который отображается с 9:00 до 10:00 в Понедельник'],
И.Т.Д.......
],
2 : [
[8, 9, "red", 'Текст который отображается с 8:00 до 9:00 во Вторник'],
[9, 10, "red", 'Текст который отображается с 9:00 до 10:00 во Вторник'],
И.Т.Д.......
],
3 : [
[8, 9, "red", 'Текст который отображается с 8:00 до 9:00 в Среду'],
[9, 10, "red", 'Текст который отображается с 9:00 до 10:00 в Среду'],
И.Т.Д.......
],
4 : [
[8, 9, "red", 'Текст который отображается с 8:00 до 9:00 в Четверг'],
[9, 10, "red", 'Текст который отображается с 9:00 до 10:00 в Четверг'],
И.Т.Д.......
],
5 : [
[8, 9, "red", 'Текст который отображается с 8:00 до 9:00 в Пятницу'],
[9, 10, "red", 'Текст который отображается с 9:00 до 10:00 в Пятницу'],
И.Т.Д.......
],
6 : [
[8, 9, "red", 'Текст который отображается с 8:00 до 9:00 в Субботу'],
[9, 10, "red", 'Текст который отображается с 9:00 до 10:00 в Субботу'],
И.Т.Д.......
]
};
(function(){
function getEventByDay( base, day, hour )
{
var obj = base[day],
len = obj.length;
for ( var i=0; i < len; i++ )
{
var resp = obj[i];
if ( hour >= resp[0] && hour < resp[1] ) break;
}
return resp;
}
// Функция получает into, БазуДанных и необходимые данные подставляет в into
function setupEvent( into, base )
{
var d = new Date(),
day = d.getDay(),
h = d.getHours(),
resp = 'n/a';
var data = getEventByDay(base, day, h);
// тут можно изменить шрифт, цвет берется из файла .js
resp = '<p><font color=' + data[2] + '>' + data[3] + '</font></p>';
document.getElementById( into ).innerHTML=resp;
}
// Вызываем...
setupEvent( 'raspisanie', data );
// тут ставим время через которое скрипт обновится
setInterval( function(){ setupEvent( 'raspisanie', data ); }, (6000*60) );
})();
Прошу вашей помощи, очень нужно данное решение( |
|
Цитата:
Мне помогло! |
| Часовой пояс GMT +3, время: 12:13. |