Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JavaScript] .animate - dziwny limit
-Gość-
post
Post #1





Goście







Wiatm!

mam kod JS na przewijanie obrazków.
obrazki są poukładane kolejno w divie, kod nadaje mu szerokość wszystkich obrazków w nim a kiedy naciśnie się na guzik, div z obrazkami się przesówa - w lewo lub w prawo.
Problem polega na tym że wszystko działa do 99 obrazków, kiedy obrazków jest ponad 100, każde wznowienie animacji do przesówania cofa całość do początku.

Szerokość diva i ilość obrazków jest dobrze odczytana, bo kiedy przewinie się całą animację bez przerywania to dochodzi do końca.
Z 98 obrazka przesówa sie do 99, a z 99 do 1 zamiast do 100 - tak jak by licznik animacji kończył sie na 99 obrazku, a potem nie wie co robić to zaczyna od początku.

link do przykładu:
http://jsfiddle.net/957UW/1/

sam JS:
CODE

$(document).ready(function(){
var imageSum = $(".sownica a").size();
var imageReelWidth = 140 * imageSum;
$(".sownica").css({'width' : imageReelWidth});


$(".prawo").mousedown(function() {



var imageWidth = $(".sownica").width();
var x = imageWidth - 854;


$(".sownica").animate({marginLeft: -x
}, 5000 );
});
$(".prawo").mouseup(function() {

$(".sownica").stop();
});

});


$(document).ready(function(){

$(".lewo").mousedown(function(){



$(".sownica").animate({marginLeft: 0 }, 5000 );
});
$(".lewo").mouseup(function() {

$(".sownica").stop();
});

});


Za pomoc lub podpowiedź z góry dziekuję.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
Michasko
post
Post #2





Grupa: Zarejestrowani
Postów: 283
Pomógł: 31
Dołączył: 10.01.2006
Skąd: Działoszyn

Ostrzeżenie: (0%)
-----


Jak już wrzucasz coś na fiddle'a, to upewnij się chociaż, że działa poprawnie. Przekopiuj style i wrzuć te obrazki na jakiś hosting, bo nikt ich z Twojego dysku nie odczyta :]
Poza tym, albo wrzuciłeś zły kod, albo wcale nie działał on tak, jak mówiłeś, lub tez wcale nie miałeś takiego problemu, jak mówiłeś.

No ale pomagając Ci:
1. Miałeś błędy HTML'a. Jeden przycisk zawierałeś poza "suwnicą", drugi w niej...jak chciałeś potem wracać w lewo?
2. Miałeś błędy CSS'a. Elementy w "suwnicy" powinny mieć float: left;, aby były obok siebie, zamiast pod sobą.

Wersja która u mnie działa (jest 120 "obrazków" - DIVów o różnych kolorach). Co dwudziesty ma niebieskie tło, ostatni (nr 120) - zielone.
http://jsfiddle.net/5AEJ4/8/

Ten post edytował Michasko 23.01.2013, 10:49:35
Go to the top of the page
+Quote Post
-Gość-
post
Post #3





Goście







Dziękuję bardzo z poświęcony czas i pomoc, jednak nadal mam ten sam problem.
Co dziwne, skopiowałem dokładnie wszystko co mam do "jsFiddle" i tam wszystko działa, przekopiowałem puźniej z "jsFiddle" na stronę i w przeglądarce już nie działa?




Okazało się że miałem nie aktualny link do "jquery.min.js" , kiedy zaktualizowałem do nowszej wersji, wszystko działa jak należy.
Dziwne że tylko to nie działało i dopiero po przejechaniu 2/3 galerii.

Przepraszam za kłopot, mój błąd był głupi, ale gdyby nie przygoda z "jsFiddle" nigdy bym nie wpadł że o to może chodzić.

Michasko - jeszcze raz dziękuję.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 15.09.2025 - 22:05