Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2003
    Messaggi
    272

    slideshow con setInterval

    Ciao a tutti!
    Stavo cercando di realizzare una sorta di slideshow automatica..che caricasse delle jpg dall'esterno a intervalli regolari..e che poi facesse una transizione tra le stesse.

    In pratica:
    caricamento immagine1 ---> fadeIn immagine1 --->
    caricamento immagine2 ---> fadeOut immagine1 fadeIn immagine2 --->
    caricamento immagine 3 ---> fadeOut immagine2 fadeIn immagine3 --->
    loop.

    Ho scritto un pò di as2 e riesco a ciclare correttamente l'array e mandarlo in loop, ma ho qualche problemino con le transizione tra le immagini, tenendo anche conto che appena faccio il loadClip nel mio mc...ovviamente il contenuto dentro di esso viene scaricato.

    Sapreste indicarmi un metodo per caricare le jpg in due mc diversi e come swapparli senza "bruschi" scatti?

    ecco il codice, grazie in anticipo

    codice:
    gallery.slideIndex = 0;
    
    gallery.images = new Array();
    gallery.images.push("galleryCloseUp/electra1.jpg");
    gallery.images.push("galleryCloseUp/electra2.jpg");
    gallery.images.push("galleryCloseUp/electra3.jpg");
    gallery.images.push("galleryCloseUp/electra4.jpg");
    
    
    
    gallery.loadNext = function() {
    
    	clearInterval(gallery.ssInterval);
    	
    	gallery.slideIndex++;
    	gallery.slideIndex = gallery.slideIndex % gallery.images.length;
    	gallery.mcLoader.loadClip(gallery.images[gallery.slideIndex], gallery.back);
    	trace("loading " + gallery.images[gallery.slideIndex]);
    }
    
    
    gallery.loadListener = new Object();
    
    
    gallery.loadListener.onLoadProgress = function(target_mc, numBytesLoaded, numBytesTotal) {
    	trace(numBytesLoaded + " " + numBytesTotal);
    }
    
    gallery.loadListener.onLoadInit = function(target_mc) {
    	trace("loaded " + gallery.images[gallery.slideIndex]);
    	gallery.ssInterval = setInterval(gallery, "loadNext", 3000);
    }
    
    gallery.mcLoader = new MovieClipLoader();
    gallery.mcLoader.addListener(gallery.loadListener);

  2. #2
    in pratica si utilizzano due contenitori portando ad un livello + alto quello visibile e quindi al cambio img si porta il contenitore vuoto su e si mette dentro la nuova img e si applica l'effetto...magari alpha

    cmq
    ci sono vari 3d in cui ci sta il cod x fare quello che cerchi
    ad es
    http://forum.html.it/forum/showthrea...ighlight=slide

    oppure
    http://forum.html.it/forum/showthrea...ighlight=slide

    proprio il primo cod ...usa un xml esterno....ancora + comodo

    la verità non è una meretrice che si getta al collo di chi non la vuole ma anzi essa è dotata di una così altera bellezza che anche chi sacrifica tutto per ottenerla non è sicuro di averla raggiunta !

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2003
    Messaggi
    272
    crescenzo mi sei stato di grandissimo aiuto!

    perfetto!

  4. #4
    Originariamente inviato da Ocity
    crescenzo mi sei stato di grandissimo aiuto!

    perfetto!
    di niente figurati

    la verità non è una meretrice che si getta al collo di chi non la vuole ma anzi essa è dotata di una così altera bellezza che anche chi sacrifica tutto per ottenerla non è sicuro di averla raggiunta !

  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2003
    Messaggi
    272
    rieccomi
    ho testato con varie prove questo script:
    http://www.v2online.it/articoli/slideshow.html
    qualcuno di voi ha avuto esperienza con questo slideshow?

    perchè testato online e con il simulate download di flash ho innumerevoli problemi...le transizioni non avvengo mai ogni tot secondi, ma ogni tanto scattano prima o dopo, a seconda di quando è stata caricata la foto...
    ottenendo lunghe pause nere tra un immagine e l'altra, oppure transizioni con pause molto piccole!

  6. #6
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Lo script l'ho scritto io ed è fatto apposta in quel modo. La gestione dei delay è fatta in modo che uno scambio di immagine non avvenga fino a che l'immagine dopo non è caricata, altrimenti ci sarebbero dei problemi decisamente più fastidiosi.

  7. #7
    Utente di HTML.it
    Registrato dal
    Dec 2003
    Messaggi
    272
    ah, perfetto and80 grazie della risposta

    ma in che modo sarebbe possibile temporizzare in maniera "rigida", il tempo di attesa?
    nel senso:

    caricamento ima1.
    fade in ima1.
    5secondi di attesa (diventano di più se l'ima2 non è ancora stata caricata, se è già stata caricata aspetto comunque 5 secondi).
    fadeout ima1 fade in ima2.

    grazie mille

  8. #8
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Con quel codice non puoi, perchè i caricamenti avvengono parzialmente per ogni immagine caricata, fino a che ce ne sono in cartella. Ma siccome è vincolato all'errore che causerebbe la prima "immagine inesistente" nella cartella, non è possibile effettuare un caricamento cumulativo prima di far cominciare lo slideshow.

    Comunque adattando un pochino il codice, si può fare ugualmente lo slide, in modo che, prima di iniziare la transizioni, carichi tutte le immagini che si passano all'swf. In quel caso però non so quanto possa essere conveniente usare immagini esterne, basterebbe metterle tutte in un swf dedicato e caricare solo quell'swf dentro al filmato principale.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.