Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Помогите Jquery смена несколько картинок (https://javascript.ru/forum/jquery/38069-pomogite-jquery-smena-neskolko-kartinok.html)

nordeveloper 17.05.2013 16:54

Помогите Jquery смена несколько картинок
 
Помогите Jquery смена несколько картинок

есть
<div class="cat5">
<img  calss="cat5-hover"  src="photo1.jpg">
</div>

как сделать чтобы по наведению поменялись картинки по очереди

эффекты не важны

photo1.jpg
photo2.jpg
photo3.jpg
photo4.jpg


мышка уберем останавливается

два дня уже мучаюсь

надеюсь кто то поможет

animhotep 17.05.2013 17:01

примерный алгоритм
создайте массив с картинками
$(".cat5").hover(
  function () {
    //меняем src картинки
    setInterval(функция смены, 1000) ;
  }
);

nordeveloper 17.05.2013 17:04

Jquery смена несколько картинок
 
$('.cat5').mouseover(

function slideShow() {

var imgs = ['/sites/default/files/home_catalog/cat5.jpg','/sites/default/files/home_catalog/cat5-2.jpg','/sites/default/files/home_catalog/cat5-3.jpg','/sites/default/files/home_catalog/cat5-4.jpg'];
 

function changeimage(){
	for(i=0; i<5;i++){
	 $('img.cat5-hover').attr('src',imgs[i]);
	 }
}
  setTimeout(changeimage, 5000);
 
}

);


только последний показывает

nordeveloper 17.05.2013 17:06

может поможете очень нужно

animhotep 17.05.2013 17:07

setTimeout и setInterval какбы отличаются тем что setTimeout вызывается только 1раз

nordeveloper 17.05.2013 17:08

с setInterval(changeimage, 5000);
тоже последный показывает

nordeveloper 17.05.2013 17:09

Jquery смена несколько картинок
 
тоже последний показывает

$('.cat5').mouseover(

function slideShow() {

var imgs = ['/sites/default/files/home_catalog/cat5.jpg','/sites/default/files/home_catalog/cat5-2.jpg','/sites/default/files/home_catalog/cat5-3.jpg','/sites/default/files/home_catalog/cat5-4.jpg'];
 

function changeimage(){
	for(i=0; i<5;i++){
	 $('img.cat5-hover').attr('src',imgs[i]);
	 }
}
  setInterval(changeimage, 5000);
 
}

);

animhotep 17.05.2013 17:11

там 5сек задержка, может не дожидаетесь)
выложите пример на http://learn.javascript.ru/play

nordeveloper 17.05.2013 17:12

нет жду просто сразу последний показывает после 5 сек задержки

nordeveloper 17.05.2013 17:14

http://learn.javascript.ru/play/22DyWb

animhotep 17.05.2013 17:15

а, дык всё верно
через 5 сек вызывается функция, которая пробегает по всем картинкам и показывает последнюю
а нужно каждые 5сек вызывать только одну смену. както так
var i=0;
function changeimage(){
	i++;
	 $('img.cat5-hover').attr('src',imgs[i]);
	if (i == 5){
	i=0;
}
}

nordeveloper 17.05.2013 17:17

http://learn.javascript.ru/play/yZHSqb

nordeveloper 17.05.2013 17:19

http://learn.javascript.ru/play/LyID9

animhotep 17.05.2013 17:19

всё верно for(i=0; i<5;i++) пробегает мгновенно и выдаёт в итоге i==4

nordeveloper 17.05.2013 17:22

http://learn.javascript.ru/play/OphHHb

nordeveloper 17.05.2013 17:23

а как сделать?

nordeveloper 17.05.2013 17:25

Отлично спасибо дай бог тебе здоровье :)

animhotep 17.05.2013 18:07

Цитата:

Сообщение от nordeveloper
а как сделать?

я выше писал
Цитата:

Сообщение от nordeveloper
Отлично спасибо дай бог тебе здоровье

это сарказм или помощь уже не нужна?


Часовой пояс GMT +3, время: 17:29.