Народ, кто подскажет как сделать следующее:, 4 Менявшиеся картинки.

D5
На сайте с 11.10.2010
Offline
3
5775

Строю сайт. Мне нужно чтоб на главной странице 4 фотки менялись. Т.е. 4 фотки (4 отдельные категории) расположены в ряд. Для каждой категории 4-5 фотоки и эти 4-5 фоток меняются одна за другой (из своей категории). Фотки без ссылок. Как я понимаю в HTML такого сделать невозможно. Или все же возможно? Если нет то как это делается Ha Jave? Как то не хочется делать это на флэше.

C
На сайте с 04.02.2005
Offline
291
#1

var pause = 2000;
var timer;
var count;
count=0;
function swap () {
document.getElementById("img1").src="images/img1_"+count+".jpg";
document.getElementById("img2").src="images/img2_"+count+".jpg";
document.getElementById("img3").src="images/img3_"+count+".jpg";
document.getElementById("img4").src="images/img4_"+count+".jpg";
if (count<=3) {count++;} else {coont=0;}
timer=setTimeout(function () {swap(count)},pause);
}
timer=setTimeout(function () {swap(count)},pause);

Приблизительно...

LEOnidUKG
На сайте с 25.11.2006
Offline
1774
#2

Ой да ну)))

Давайте легче сделаем?


<img id="ban" src="img1.png" />
<script>
var imgcount=3;//Количество картинок
var timeslader=1;// Меняться каждые ххх секунд
function rand(){
document.getElementById("ban").src="img"+Math.floor(Math.random()*(imgcount+1))+".png";
setTimeout('rand()',timeslader*1000);
}
rand();
</script>

Картинки должны называться

img1.png

img2.png

img3.png

и т.п.

расширение и имена конечно можете менять под себя, но меняются цифры в конце.

✅ Мой Телеграм канал по SEO, оптимизации сайтов и серверов: https://t.me/leonidukgLIVE ✅ Качественное и рабочее размещение SEO статей СНГ и Бурж: https://getmanylinks.ru/ ✅ Настройка и оптимизация серверов https://getmanyspeed.ru/
C
На сайте с 04.02.2005
Offline
291
#3

LEOnidUKG, Согласно ТЗ:

Т.е. 4 фотки (4 отдельные категории) расположены в ряд.

LEOnidUKG
На сайте с 25.11.2006
Offline
1774
#4
Chukcha:
LEOnidUKG, Согласно ТЗ:

Т.е. 4 фотки (4 отдельные категории) расположены в ряд.

Да не вопрос:


<img id="ban1" src="cat1/img1.png" />
<img id="ban2" src="cat2/img1.png" />
<img id="ban3" src="cat3/img1.png" />
<img id="ban4" src="cat4/img1.png" />

<script>
var imgcount=3;//Количество картинок в категории
var timeslader=1;// Меняться каждые ххх секунд
function rand(){
document.getElementById("ban1").src="img"+Math.floor(Math.random()*(imgcount+1))+".png";
document.getElementById("ban2").src="img"+Math.floor(Math.random()*(imgcount+1))+".png";
document.getElementById("ban3").src="img"+Math.floor(Math.random()*(imgcount+1))+".png";
document.getElementById("ban4").src="img"+Math.floor(Math.random()*(imgcount+1))+".png";
setTimeout('rand()',timeslader*1000);
}
rand();
</script>
skAmZ
На сайте с 04.09.2009
Offline
122
#5

LEOnidUKG, а если было бы 100500?) Тоже каждый бы указывали?)

P.S. LEOnidUKG хотел написать ;)


<img id="ban1" src="cat1/img1.png" />
<img id="ban2" src="cat2/img1.png" />
<img id="ban3" src="cat3/img1.png" />
<img id="ban4" src="cat4/img1.png" />

<script>
var imgcount=3;//Количество картинок в категории
var timeslader=1;// Меняться каждые ххх секунд
var bancount=4;
function rand(){
for(var i=0;i<bancount;i++) document.getElementById("ban"+i).src="img"+Math.floor(Math.random()*(imgcount+1))+".png";
setTimeout('rand()',timeslader*1000);
}
rand();
</script>
C
На сайте с 04.02.2005
Offline
291
#6

LEOnidUKG, и чем это теперь отличается от моего?

Случайным выбором изображения?

ну хорошо...

но есть еще и необходимость в прелоаде изображений. Если не закешировать картинку, то на первом этапе будет заметное мигание.

LEOnidUKG
На сайте с 25.11.2006
Offline
1774
#7
если было бы 100500?

А если название файлов нельзя менять?

А если подгрузка нужна чётко в нужном порядке?

А если....

Ну вы меня поняли :)

LEOnidUKG добавил 19.10.2010 в 12:20

Chukcha:
LEOnidUKG, и чем это теперь отличается от моего?
Случайным выбором изображения?

В подходе к решению задачи. Представляете? Оказывается можно решать задачу не 1 путем 🚬

LEOnidUKG добавил 19.10.2010 в 12:21

но есть еще и необходимость в прелоаде изображений.

Ну тогда делать просто ленту из картинок в 1 файл и потом через CSS сдвигать по пикселям :)

D5
На сайте с 11.10.2010
Offline
3
#8

Ребят , я наверное где то что то пропустил или недопонял.

Не работает хоть ты тресни...

По последнему примеру создал 4 папки cat1 cat2 cat3 cat4 в эти папки положил по 4 фотки img1 img2 img3 img4 поменял в коде png на jpeg затем вставил код в ХТМЛ.

что не так?

LEOnidUKG
На сайте с 25.11.2006
Offline
1774
#9
Dima_5555:
Ребят , я наверное где то что то пропустил или недопонял.
Не работает хоть ты тресни...
По последнему примеру создал 4 папки cat1 cat2 cat3 cat4 в эти папки положил по 4 фотки img1 img2 img3 img4 поменял в коде png на jpeg затем вставил код в ХТМЛ.
что не так?

Ещё бы)))

У нас больной умные просто люди, любят вставлять циклы туда куда не нужно.

<img id="ban1" src="cat1/img1.png" />

<img id="ban2" src="cat2/img1.png" />
<img id="ban3" src="cat3/img1.png" />
<img id="ban4" src="cat4/img1.png" />

<script>
var imgcount=3;//Количество картинок в категории
var timeslader=1;// Меняться каждые ххх секунд
function rand(){
document.getElementById("ban1").src="/cat1/img"+Math.floor(Math.random()*(imgcount+1))+".png";
document.getElementById("ban2").src="/cat2/img"+Math.floor(Math.random()*(imgcount+1))+".png";
document.getElementById("ban3").src="/cat3/img"+Math.floor(Math.random()*(imgcount+1))+".png";
document.getElementById("ban4").src="/cat4/img"+Math.floor(Math.random()*(imgcount+1))+".png";
setTimeout('rand()',timeslader*1000);
}
rand();
</script>

LEOnidUKG добавил 20.10.2010 в 12:48

с больной умные просто люди,

Вот это я жгу по ночам :D

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий