JS z jQuery

0

Uczę się JS i jQuery od dwóch dni i próbuje zrobić diva w którym zmieniają się zdjęcia. Taki slajd.
Mam problem:
To działa:

$(document).ready(function(){
	$("p").click(function(){
		$(this).hide();
	})
})
$(document).ready(function(){
	$("img").click(function(){
		$(this).slideUp(3000, function(){
			if(this.src.match("P2.jpg"))
				this.src = "P3.jpg";
			else 
				this.src = "P2.jpg";
		})
		.slideDown(3000);
	})
})
 

A to nie:

 $(document).ready(function(){
	$("p").click(function(){
		$(this).hide();
	})
})
$(document).ready(function(){
	$("img").click(function(){
		$(this).slideUp(3000, changeImg(this))
		.slideDown(3000);
	})
		function changeImg(image){
		if(image.src.match("P2.jpg"))
			image.src = "P3.jpg";
		else
			image.src ="P2.jpg";
	}
})

W drugim gdy zamiast callback użyje łańcuchów łączeń to i tak nie działa a jak osobno funkcje to działa tylko, że wykonują się od razu a chcę żeby poczekały.

0

Hardcoded paths w skryptach to zło.
Losowy snippet z internetu, który powinieneś zmodyfikować pod siebie:

var actualSlide = 0;
$(function(){
	var banner = $("#me .banner");
	var bannerSlides = $(banner.find("img"));
	var timerId = setInterval(function sliderFun(){
		if(++actualSlide >= bannerSlides.length)
			actualSlide = 0;
		banner.css("background-image", "url("+$(bannerSlides[actualSlide]).attr("src")+")");
		return sliderFun;
	}(), 4/*s*/ * 1000);
});
0

Dzięki za przykład ale jak już napisałem to dopiero się uczę a wydaję mi się, że żeby nauczyć się programować trzeba programować ;)
Oczywiście można się wzorować na czymś by nie wymyślać koła od nowa ale to chyba nie dotyczy "czasu" nauki podstaw.

Mówisz, że ścieżki na twardo w skrypcie to zło, okej to jak odwołać się do innych ścieżek z jakiegoś folderu w projekcie?

1 użytkowników online, w tym zalogowanych: 0, gości: 1