Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML][JavaScript] Powtórne odtworzenie gifa
Forum PHP.pl > Forum > Przedszkole
barthpl
Mam takie pytanie: czy jest możliwe powtórne odtworzenie gifa (animowany) który już raz się wykonał questionmark.gif

Pełen opis sytuacji: mam sobie animację w gifie, która się odtwarza przy uruchomianiu strony i chciałbym na stronie dodać przycisk "odtwórz jeszcze raz", po kliknięciu którego gif wykonałby (odtworzył) się raz jeszcze.
kokers
może tak?
document.images["image_name"].src = "image_source";

innymi słowy, albo refresh strony, albo ajax i np ładowanie obrazka do kontenera. np z frameworkiem prototype i funkcja update.
zegarek84
jedne ze sposobów które powinny zadziałać aczkolwiek specjalnie nie chce mi się sprawdzać to... podmień src w pierwszej kolejności na pusty ciąg [ale, żeby nie było skoku obrazka nadaj mu wymiary] lub na adres innego obrazka i od razu wstaw potem stary adres src [nikt tej zmiany nie zauważy] - gif powinien się od nowa odtworzyć... następny sposób jaki mi przychodzi do głowy to utwórz metodami dom element obrazka, nadaj mu odpowiednie źródlo i podmień elementy [obrazki] w drzewie dom... jeszcze jeden ze sposobów który na 100% zadziała ale mało optymalny gdyż obrazek zostanie pobrany po raz kolejny to dodanie do adresu obrazka losowych cyfr np. timstap "obrazek.gif?12345"...

edit...
jeszcze jedna to po prostu na żywca możesz skasować zawartość jakiegoś kontenera z tym obrazkiem i wstawić tam ten obrazek przez innerHTML...
wNogachSpisz
Hmmm, pod operą to nie zadziała..
Raz zaladowany gif będzie działał tak jakby odtwarzał się "w tle".
Nie masz pewności od którego momnetu cyklu zacznie się animacja kiedy go uwidocznisz...

Może by tak ładowac gfia z cachefixem?
http://example.com/img.gif?cachefix=123456789
zegarek84
Cytat(wNogachSpisz @ 1.03.2011, 09:40:47 ) *
Hmmm, pod operą to nie zadziała..

to a dokładnie co nie zadziała??

po części masz rację ale też napisałem, że nie będę sprawdzał które z rozwiązań zadziała uniwersalnie - to co Ty masz na myśli to fakt, nie może być tego obrazka na stronie pod operą - ale żaden problem - wystarczy podmienić obrazek lub zrobić coś takiego - sprawdziłem i zadziaalło - z tą rużnicą, że ten gif by się nonstop wykonywał - w tym przykładzie on zaczyna się wykonywać od początku co 3 sekundy - poprzedź skrypt napisem java script: w pasku adresu i go wklej w operze:
[JAVASCRIPT] pobierz, plaintext
  1. var url = 'http://uminscy.blox.pl/resource/powiedzmihc0.gif',
  2. img = document.createElement('img');
  3. img.setAttribute('src', url);
  4. document.body.appendChild(img);
  5.  
  6. var fAdImg = (function(img, url){return function(){
  7. img.src = "";
  8. img.src = url;
  9. }})(img, url);
  10. setInterval(fAdImg, 3000);void(0);
[JAVASCRIPT] pobierz, plaintext
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.