![]() | |
![]() |
| | Thread Tools | Display Modes |
#1
| |||
| |||
|
#2
| |||
| |||
|
|
ogni frame ovviamente è una immagine gif. |
#3
| |||
| |||
|
|
"Summonix" <SPAM (AT) SPAM (DOT) com> ha scritto ogni frame ovviamente è una immagine gif. Mi correggo...non necessariamente gif, o meglio, non solo gif ma anche jpg se possibile. ciao Summonix |
#4
| ||||||
| ||||||
|
|
Non che ci vogliano millemila linee di codice eh! |
|
Un po' di eccezionale pappa pronta: |
|
function AnimazioneCiclica() { this.indice_frame = 0; this.numero_frames = 50; // l'animazione consta di 50 frames this.timer = null; this.intervallo = 100; // millisecondi } |
|
AnimazioneCiclica.prototype.avvia = function() |
|
AnimazioneCiclica.prototype._frameSeguente = function() { // Imposta l'immagine, ad esempio: document.getElementById('frame_animato').src = 'path/to/image/' + this.indice_frame + '.jpg'; // Incrementa l'indice del frame corrente this.indice_frame = ++this.indice_frame % this.numero_frames; }; |
|
// Crea e avvia un'animazione new AnimazioneCiclica().avvia(); |
#5
| |||||
| |||||
|
|
function AnimazioneCiclica() { this.indice_frame = 0; this.numero_frames = 50; // l'animazione consta di 50 frames this.timer = null; this.intervallo = 100; // millisecondi } Ma this cosa significa qui? Io conosco soltanto il this che si passa da un oggetto del DOM ad una funzione per fare riferimento a quell'oggetto. Qui che significato ha? |
|
AnimazioneCiclica.prototype.avvia = function() Ehm... e questa roba che è? :-) |
|
Non conosco proprio la sintassi. Il nome della funzione? e tutta quella roba a sinistra del segno uguale separata da punti? Boh, io richiamo le funzioni con il nome di funzione tipo: onMouseOver="rollami(this)"; e la funzione rollami sarà qualcosa del tipo: function rollami(pulsante){ ... } Sono iNiorantissimo, mi spiegheresti gentilmente la riga sopra? La prima parte della funzione l'ho capita, cioè la costruzione del path ma quella sotto sull'incremento de frame, è un po' dura... A parte che c'è sempre quel this che non so cosa sia, oltre alla solita sintassi di introduzione alla funzione che non comprendo proprio, come ho scritto sopra. Ho visto che usi il modulo, ma non capisco il funzionamento: non bastava aumetarlo di 1 tipo indice_frame++ ? |

|
// Crea e avvia un'animazione new AnimazioneCiclica().avvia(); Questa poi... neanche la commento, perché non so da dove partire :-) |
|
Osservazioni: Adesso capisci perché cercavo un programino che lo facesse automaticamente? .-) Il fatto è che dovrei studiare un bel po' di proigrammazione ma adesso non ho tempo. comunque con quel pochissimo che so sono riuscito a farla, anche se non con un codice così flessibile e funzionale come il tuo. Cioè, nel mio caso ogni volta dovrei scrivermi un po' di cose, soprattutto per quanto riguarda i nomi di file immagine e qualche aggiustamento in base al numero di frame. Comunque ecco di seguito il codicino: script type="text/javascript" var immagini = new Array( "test3_frame0001.jpg", "test3_frame0002.jpg", "test3_frame0003.jpg", "test3_frame0004.jpg", // ...altre immagini //... "test3_frame0017.jpg" ); var cont = 0; function anim() { var animazione = document.getElementById("spazioAnim"); animazione.src = immagini[cont]; cont++; var controllo = setTimeout ("anim()",15); if (cont >=17){ clearTimeout(controllo); cont = 0; } } e sotto il body ho messo uno spazio immagine: img id="spazioAnim" src="start.jpg" Insomma, l'ho testato e funziona a meraviglia, finalmente vedo un'animazione fluidissima, come cercavo. Potresti dirmi gentilmente (prima di manarmi a cac... dopo tutte le mie richieste!) se il mio codice ha degli sconvenienti? ciao Summonix |
#6
| |||
| |||
|
|
this e' un riferimento all'oggetto nel cui contesto viene eseguita una funzione. |
#7
| |||
| |||
|
|
Per dirla semplice, quando tu invochi un metodo di un oggetto, stai eseguendo una funzione come le altre, con l'eccezione che la variabile this fa riferimento all'oggetto. Se la funzione e' un metodo, this "punta" all'oggetto, altrimenti "punta" alla finestra (window). |
![]() |
| Thread Tools | |
| Display Modes | |
| |