Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Как подправить вывод картинки

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: после загрузки страницы в браузере
Строитель
Отправлено: 23 Апреля, 2014 - 10:39:47
Post Id



Участник


Покинул форум
Сообщений всего: 1580
Дата рег-ции: Февр. 2014  
Откуда: Украина


Помог: 73 раз(а)




Доброго времени суток. Нашёл код, который выбирает из массива файл с указанной в этом скрипте периодичностью(в данном случае, выбираем новую картинку каждые две секунды).Немного модернизировал его(добавил пару PHP-функций в адрес изображений), но после загрузки страницы в браузере, картинка появляется только по истечении установленного в скрипте времени. Т.е., до появления первой картинки на её месте пусто. Если бы картинки менялись через пару секунд, то в принципе это небыло бы проблемой: зашел на сайт, и через две-три секунды видишь картинку, потом другую, третью и т.д... Но нужно выводить картинку через 40-60 минут, и в этом случае первые сорок минут картинка выводиться не будет. Как подправить вывод картинки сразу после загрузки страницы в браузере?

CODE (javascript):
скопировать код в буфер обмена
  1.     <script>
  2.         myImg=new Array(<?=date('Ymd')?>+'/'+<?=rand(0,23)?>+'.ico',
  3.                         <?=date('Ymd')?>+'/'+<?=rand(0,23)?>+'.ico',
  4.                         <?=date('Ymd')?>+'/'+<?=rand(0,23)?>+'.ico',
  5.                         <?=date('Ymd')?>+'/'+<?=rand(0,23)?>+'.ico',
  6.                         <?=date('Ymd')?>+'/'+<?=rand(0,23)?>+'.ico',
  7.                         <?=date('Ymd')?>+'/'+<?=rand(0,23)?>+'.ico',
  8.                         <?=date('Ymd')?>+'/'+<?=rand(0,23)?>+'.ico',
  9.                         <?=date('Ymd')?>+'/'+<?=rand(0,23)?>+'.ico',
  10.                         <?=date('Ymd')?>+'/'+<?=rand(0,23)?>+'.ico',
  11.                         <?=date('Ymd')?>+'/'+<?=rand(0,23)?>+'.ico',
  12.                         <?=date('Ymd')?>+'/'+<?=rand(0,23)?>+'.ico',
  13.                         <?=date('Ymd')?>+'/'+<?=rand(0,23)?>+'.ico',
  14.                         <?=date('Ymd')?>+'/'+<?=rand(0,23)?>+'.ico',
  15.                         <?=date('Ymd')?>+'/'+<?=rand(0,23)?>+'.ico',
  16.                         <?=date('Ymd')?>+'/'+<?=rand(0,23)?>+'.ico',
  17.                         <?=date('Ymd')?>+'/'+<?=rand(0,23)?>+'.ico',
  18.                         <?=date('Ymd')?>+'/'+<?=rand(0,23)?>+'.ico',
  19.                         <?=date('Ymd')?>+'/'+<?=rand(0,23)?>+'.ico',
  20.                         <?=date('Ymd')?>+'/'+<?=rand(0,23)?>+'.ico',
  21.                         <?=date('Ymd')?>+'/'+<?=rand(0,23)?>+'.ico',
  22.                         <?=date('Ymd')?>+'/'+<?=rand(0,23)?>+'.ico',
  23.                         <?=date('Ymd')?>+'/'+<?=rand(0,23)?>+'.ico',
  24.                         <?=date('Ymd')?>+'/'+<?=rand(0,23)?>+'.ico',
  25.                         <?=date('Ymd')?>+'/'+<?=rand(0,23)?>+'.ico');
  26.         flag=0;
  27.         myInt=setInterval('setMyInt()', 2000);
  28.         function setMyInt(){
  29.         flag++;
  30.         if(myImg[flag]){
  31.         document.all['mImg'].src=myImg[flag] ;
  32.         }else{
  33.         flag=1;
  34.         document.all['mImg'].src=myImg[flag] ;
  35.         }
  36.         }
  37.     </script>


CODE (html):
скопировать код в буфер обмена
  1. <img id='mImg' alt="&nbsp;" />
 
 Top
IllusionMH
Отправлено: 23 Апреля, 2014 - 11:07:35
Post Id



Активный участник


Покинул форум
Сообщений всего: 4254
Дата рег-ции: Февр. 2011  
Откуда: .kh.ua


Помог: 242 раз(а)




Строитель, первую картинку выводить сразу в теле документа. либо сраз вызвать функцию вне интервала.

P.S. Не используйте строки в setInterval, можно просто передать функцию(без кавычек и скобок)

(Отредактировано автором: 23 Апреля, 2014 - 11:09:14)

 
 Top
Строитель
Отправлено: 23 Апреля, 2014 - 11:14:12
Post Id



Участник


Покинул форум
Сообщений всего: 1580
Дата рег-ции: Февр. 2014  
Откуда: Украина


Помог: 73 раз(а)




IllusionMH пишет:
Строитель, первую картинку выводить сразу в теле документа. либо сраз вызвать функцию вне интервала.

P.S. Не используйте строки в setInterval, можно просто передать функцию(без кавычек и скобок)


А можете пример дать? Я в javascript очень плохо разбираюсь.
 
 Top
Строитель
Отправлено: 23 Апреля, 2014 - 15:30:01
Post Id



Участник


Покинул форум
Сообщений всего: 1580
Дата рег-ции: Февр. 2014  
Откуда: Украина


Помог: 73 раз(а)




IllusionMH пишет:
Строитель, первую картинку выводить сразу в теле документа. либо сраз вызвать функцию вне интервала.

P.S. Не используйте строки в setInterval, можно просто передать функцию(без кавычек и скобок)


Спасибо за совет, разобрался. Вот рабочее решение:

CODE (javascript):
скопировать код в буфер обмена
  1. <script>
  2.         function rand(min, max){
  3.         return Math.floor(Math.random()*(max-min+1)+min);
  4.         }
  5.         setInterval(setMyInt, 2000);
  6.         function setMyInt(){
  7.         document.all['mImg'].src=<?=date('Ymd')?>+'/'+rand(0,23)+'.ico';
  8.         }
  9.     </script>


CODE (html):
скопировать код в буфер обмена
  1. <img id='mImg' src="<?=date('Ymd').'/'?><?=rand(0,23).'.ico'?>" alt="&nbsp;" />
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« JavaScript & VBScript »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB