Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 31.08.2012, 00:15
Интересующийся
Отправить личное сообщение для KTIM Посмотреть профиль Найти все сообщения от KTIM
 
Регистрация: 22.10.2011
Сообщений: 22

Генерация случайной картинки в определнное время
Есть код:
<html>
<head>
<script type="text/javascript">
  var UTS = date.getUTCHours();
  var m = 14400000;
  var n = 28800000;
  var day_pics = 3;
  var night_pics = 4;
  var interval = Math.floor(Math.random()*(n - m + 1))+m;;
  var time_out = Math.floor(Math.random()*(n - m + 1))+m;;
  var day = 0;
  var night = 0;
  var timeout;
  var opacity = 100;
  function day() {
    if(UTS>6&&UTS<19) {
    opacity--;
    var k = day + 1;
    var image_now = 'day_' + day;
    if (day == day_pics) k = 1;
    var image_next = 'day_' + k;
    document.getElementById(image_now).style.opacity = opacity/100;
    document.getElementById(image_now).style.filter = 'alpha(opacity='+ opacity +')';
    document.getElementById(image_next).style.opacity = (100-opacity)/100;
    document.getElementById(image_next).style.filter = 'alpha(opacity='+ (100-opacity) +')';
	timeout = setTimeout("fade_to_next()",time_out);
    if (opacity==1) {
      opacity = 100;
	  clearTimeout(timeout);
    }
	};
	function night() {
    if(UTS>20&&UTS<7) {
    opacity--;
    var k = night + 1;
    var image_now = 'night_' + night;
    if (night == night_pics) k = 1;
    var image_next = 'night_' + k;
    document.getElementById(image_now).style.opacity = opacity/100;
    document.getElementById(image_now).style.filter = 'alpha(opacity='+ opacity +')';
    document.getElementById(image_next).style.opacity = (100-opacity)/100;
    document.getElementById(image_next).style.filter = 'alpha(opacity='+ (100-opacity) +')';
	timeout = setTimeout("fade_to_next()",time_out);
    if (opacity==1) {
      opacity = 100;
	  clearTimeout(timeout);
    }
	setInterval (
    function() {
      day++;
      if (day > day_pics) day=1;
      fade_to_next();
    }, interval
  );
  setInterval (
    function() {
      night++;
      if (night > night_pics) night=1;
      fade_to_next();
    }, interval
  );
</script>
</head>
</html>

Стоит задача сделать так, чтобы с 7:01 до 19:59 случайно генери-лись одни картинки, а с 20:00 до 7:00 другие. В <body> картинки есть, их 7 штук.

Последний раз редактировалось KTIM, 01.09.2012 в 16:59.
Ответить с цитированием
  #2 (permalink)  
Старый 31.08.2012, 17:17
Новичок на форуме
Отправить личное сообщение для xeLL Посмотреть профиль Найти все сообщения от xeLL
 
Регистрация: 15.02.2012
Сообщений: 8

Лучше на бэкенде такую фичу впилить.
Ответить с цитированием
  #3 (permalink)  
Старый 31.08.2012, 22:15
Интересующийся
Отправить личное сообщение для KTIM Посмотреть профиль Найти все сообщения от KTIM
 
Регистрация: 22.10.2011
Сообщений: 22

Где?
Ответить с цитированием
  #4 (permalink)  
Старый 31.08.2012, 22:24
Профессор
Отправить личное сообщение для bot87 Посмотреть профиль Найти все сообщения от bot87
 
Регистрация: 16.05.2011
Сообщений: 307

Делаеш два разных массива с адресами картинок.
Один массив с урл картинок для утра ,а другой для ночи.
Выводишь рандомно через Math.random()по условию времени определенную картинку
__________________
Я только учусь.Ногами просьба не бить

Последний раз редактировалось bot87, 01.09.2012 в 06:22.
Ответить с цитированием
  #5 (permalink)  
Старый 01.09.2012, 12:40
Интересующийся
Отправить личное сообщение для KTIM Посмотреть профиль Найти все сообщения от KTIM
 
Регистрация: 22.10.2011
Сообщений: 22

Сообщение от bot87 Посмотреть сообщение
Один массив с урл картинок для утра ,а другой для ночи.
Через getUTC? А можно ли через конкатенацию соединить UTCHours и UTCMinutes?
Ответить с цитированием
  #6 (permalink)  
Старый 01.09.2012, 12:55
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

KTIM,
<script type="text/javascript">
var today = new Date()
//Sat Sep 01 2012 12:51:36 GMT+0400
str=today.toString().replace(/^.*? (\d\d:\d\d):\d\d .*$/,'$1')
alert(str)
</script>
Ответить с цитированием
  #7 (permalink)  
Старый 01.09.2012, 13:11
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

Сообщение от Deff Посмотреть сообщение
KTIM,
<script type="text/javascript">
var today = new Date()
//Sat Sep 01 2012 12:51:36 GMT+0400
str=today.toString().replace(/^.*? (\d\d:\d\d):\d\d .*$/,'$1')
alert(str)
</script>
Вам, Deff и KTIM, следовало бы почитать :
http://javascript.ru/Date
var date = new Date;
alert ( date.getHours() + ":" + date.getMinutes() );
Ответить с цитированием
  #8 (permalink)  
Старый 01.09.2012, 13:45
Интересующийся
Отправить личное сообщение для KTIM Посмотреть профиль Найти все сообщения от KTIM
 
Регистрация: 22.10.2011
Сообщений: 22

ОК, премного благодарен. Последний вопрос: можно ли средствами чистого JS получить время на сервере?
Ответить с цитированием
  #9 (permalink)  
Старый 01.09.2012, 13:55
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

KTIM,
Вот тады стоит делать через абсолютное Время по Гривичу ( оно не зависит от юзера, а далее добавить смещение сервера(надеюсь оно неизменно ?
<script>
var today = new Date()
//Sat Sep 01 2012 12:51:36 GMT+0400
alert (today.getUTCHours() + ":" + today.getUTCMinutes() );

</script>
Ответить с цитированием
  #10 (permalink)  
Старый 01.09.2012, 14:29
Интересующийся
Отправить личное сообщение для KTIM Посмотреть профиль Найти все сообщения от KTIM
 
Регистрация: 22.10.2011
Сообщений: 22

Deff, а если это время надо получить, чтобы определенные пикчи выводились с до какое-то время, то будет ли работать сей код?:
if(date.getUTCHours()>7&&date.getUTCMinutes()>00)
	do {
	{
    //тело  функции
            }
	while (date.getUTCHours()>19&&date.getUTCMinutes()>59)
	};
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Время загрузки картинки Snipe Общие вопросы Javascript 35 05.04.2010 20:20
Как изменить размер картинки? Mihail Общие вопросы Javascript 1 25.10.2009 13:42