Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > JavaScript, Ajax
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.12.2009, 12:24   #1
soonner
Пользователь
 
Аватар для soonner
 
Регистрация: 14.03.2009
Сообщений: 97
По умолчанию Рандомная смена картинок в хедере

Есть следующая задача:
У меня есть n- картинок, все одного размера. есть место на сайте куда их нужно вставить-блок. Что сообственно нужно: нужно что бы при каждом обновлении страницы пользователем, в этот блок размещалась разная картинка. Желательно в рандомном порядке.

На данный момент я использую следующий скрипт->

Код:
<script language="JavaScript"> 
<!-- 
var a=Math.round(Math.random()*2) 
image = new Array(); 
image[0]="http://картинки" 
image[1]="http://картинки" 
image[2]="http://картинки" 
document.write ("<img src="+image[a]+">"); 
//--> 
</script>
Мне как более менее понимающему ясно что нужно зделать что бы было больше чем три картинки тоесть добавить ещё строку->
Код:
image[3]="http://картинки"
и так далее, но согласитесь не удобно, правильнее было бы что бы картинки лежали в папке поименованные по порядку и при добавлении картинки в папку скрипт не нужно было бы менять.

Вообщем нужен скрипт рандома картинок без привязки к их количеству. прошу в этом помочь.
soonner вне форума Ответить с цитированием
Старый 20.12.2009, 20:29   #2
Levsha100
Заблокирован
Старожил
 
Регистрация: 20.07.2008
Сообщений: 4,032
По умолчанию

Я конечно сори, но это как-то неправильно. Лучше, имхо, все это запихать в php скрипт.
Levsha100 вне форума Ответить с цитированием
Старый 20.12.2009, 21:21   #3
soonner
Пользователь
 
Аватар для soonner
 
Регистрация: 14.03.2009
Сообщений: 97
По умолчанию

к сожеление юкоз не сильно любит работать с чужими скриптами, а темболее с php.
soonner вне форума Ответить с цитированием
Старый 20.12.2009, 23:34   #4
SkyM@n
Laravel/Vue expert
Старожил Подтвердите свой е-майл
 
Аватар для SkyM@n
 
Регистрация: 08.08.2007
Сообщений: 2,832
По умолчанию

зачем же РНР для такого? хватит и джаваскрипта
SkyM@n вне форума Ответить с цитированием
Старый 24.12.2009, 14:49   #5
soonner
Пользователь
 
Аватар для soonner
 
Регистрация: 14.03.2009
Сообщений: 97
По умолчанию

так вот какой же это скрипт, а то я что то маленько не пойму химии процеса, как он должен работать!
soonner вне форума Ответить с цитированием
Старый 25.12.2009, 02:53   #6
13th
Форумчанин
 
Аватар для 13th
 
Регистрация: 31.12.2008
Сообщений: 634
По умолчанию

Начнем по порядку - название темы как из анекдота "е**нуться, обо**аться!!! Грибочки, грибочки!!!"
А теперь к вопросу
во первых - атрибут language уже сто лет не используют , так же как и комменты внутри тега скрипта
во вторых - не используйте document.write - это как серпом по яй**м!!!
Будьте грамотными и делайте красивый универсальный код
Сам исходник кода
Код:
<script type="text/javascript" >
   var imageArray=new Array('img1.jpg','img2.jpg');
   var folder='/image';
   var a=parseInt(Math.round(Math.random()*2) );
   var place='common';

   function setMeBaby(){
      /*Здесь идет проверка что бы а не было больше индекса в массиве с 
      картинками , так что совет самую последнюю картинку - самую красивую)))*/
      a=(a>=imageArray.length)?imageArray.length-1:a;
      /* спасение яиц от серпа */
      var img=document.createElement('img');
      img.src=document.domain+folder+'/'+imageArray[a];
      var placeForImg=document.getElementById(place);
     placeForImg.appendChild(img);
     alert('must work or die - check it))');
   }
</script>

Если код будешь помещать в контейнер <head> , то тогда можешь дописать в скрипте после определения функции следующие
Код:
   window.onload=function(){
       setMeBaby();
   }
Впринципе все

P.S. Насколько мне помниться javascript не умеет работать с файловой системой(1- клиентский скрипт , им как и всем остальным доступ закрыт к файлам клиента, то етсь пользователя по причине безопасности, а во вторых - вроде назначение у него работа с дом структурой и только. )
Единственное что мне помниться по сайтам на юкозе - там сплош и рядом напичкано аjax , но значит и мощная защита , раз они позволяют мюльон ламерам экспериментировать. Значит руки тебе здесь опрелеленного помогут))) ну или бесплатный хостинг(с поддержкой php and MySQL) , много терпения и ты на нелегкой тропе веб-маньяка - делаешь все так как посчитаешь нужным
Возможно всё
Пишу обо всем

Последний раз редактировалось 13th; 25.12.2009 в 08:42.
13th вне форума Ответить с цитированием
Старый 30.03.2010, 12:26   #7
a22432
Новичок
Джуниор
 
Регистрация: 30.03.2010
Сообщений: 1
По умолчанию

Чтот ваш скрипт не хочет работать никак...
Вот я его вставил, мож что сделал не так?
тест скрипта
a22432 вне форума Ответить с цитированием
Старый 14.04.2010, 20:19   #8
as518
Новичок
Джуниор
 
Регистрация: 14.04.2010
Сообщений: 1
По умолчанию

Его изменить нужно было!
1) У тебя действительно существуют эти файлы?
2) Они действительно находятся по адресу //saitadmin.ru/image/ ?
3) Тут
Код:
var a=parseInt(Math.round(Math.random()*2) );
Вместо двойки должно указываться кол-во файлов перечисленных в массиве
Код:
var imageArray=new Array('img1.jpg','img2.jpg','img3.jpg','img4.jpg','img5.jpg');
4) Твоя строка (как скопировал так и вставил)
Код:
img.src=document.domain+folder+'/'+imageArray[a];
А нужно указать путь к рисункам:
Код:
img.src='http://saitadmin.ru/image/'+imageArray[a];
Вот! Может я что то не доглядел? Сам учусь...
В общем - попробуй. И главное вглядись в разницу в тексте - своём и как должно быть!
as518 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Смена картинок (Image1,Imag2,Image3) кнопкой DimOn4Ik Помощь студентам 9 17.10.2009 12:56
описание в хедере, реализация в cpp и namespaces Роман Радер Общие вопросы C/C++ 2 23.07.2009 19:21
Смена картинок по дате Kendel JavaScript, Ajax 6 05.05.2009 13:00
Почасовая смена картинок П@Bел JavaScript, Ajax 5 12.04.2009 01:41
Распознавание картинок! Lemo Помощь студентам 10 13.03.2009 12:10