Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    [AS3] Recuperare variabili da Flashvars

    Salve.
    Ho letto diversi threads, ho letto diverse pagine su internet ho letto di tutto ma non riesco proprio a capire cosa cavolo sbaglio!
    Io e il flash ci conosciamo di vista per cui perdonate l'ignoranza bestiale!

    Se io voglio pescare dei parametri passati dall'HTML che mi apre il file SWF, e inserisco questi parametri in <param name=FlashVars value="variabile=valore&vaibaile2=valore2">, come diavolo li leggo dentro a flash.

    Trovo scritto ovunque che saranno disponibili direttamente come _root.variabile e _root.variabile2, ma mi nasce un problema, forse 2:

    1) la riga <flashvars....> la inserisco solo dopo che ho pubblicato il filmato, quindi al momento della pubblicazione non c'è.

    2) se come codice del 1° frame io inserisco una cosa tipo trace(_root.variabile), flash mi risponde con un "accesso alla proprietà non definita _root"

    Appurato che sbaglio... dove sbaglio?

    Scrivetemi due righe di codice, giusto per capirci... ma proprio 2 di numero eh!!

    Grazie!
    Dice il saggio:
    Non ci sono domande difficili, esistono solo risposte che non conosciamo!
    "Se qualcosa può andare male, lo farà" - Murphy

  2. #2
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Te ne scrivo una sola: trace(loaderInfo.parameters['variabile']);

    Quanto hai letto riguardo alla disponibilità delle variabili è corretta fino ad AS2, mentre in AS3 devi usare quell'oggetto (loaderInfo) con quella proprietà (parameters) e con quelli recuperi le variabili che ti arrivano dall'esterno.

    Poi per i due punti che hai descritto:

    1) Ovvio che le variabili esisteranno solo quando saranno disponibili nella pagina html, il concetto di "subito" che hai trovato in altre descrizioni è legato al momento in cui le variabili servono effettivamente, e cioè quando l'utente vede il filmato, non quando devi fare tu le prove su flash.
    Volendo puoi creare una variabile che assuma un valore forfettario se quella passata da FlashVars non esistesse o fosse vuota:
    codice:
    var tuaVar = loaderInfo.parameters['variabile'] != undefined ? loaderInfo.parameters['variabile'] : "vuota";
    In ogni caso la pubblicazione non viene "interrotta" in mancanza di quelle variabili.

    2) Tutte le variabili che in AS2 avevano il "_" davanti l'hanno eliminato, quindi se ad esempio ti serve accedere al vecchio _root, lo fai con root ma in ogni caso nello specifico che stiamo affrontando non ci serve.

  3. #3
    grazie mille, era la risposta che mi serviva.

    adesso la metto insieme a quanto ho trovato sull'oggetto swfobject, che, mi dicono, sia più appropriato per la pubblicazione degli swf rispetto al vecchio javascript in uscita da flash CS3.

    ciao e grazie ancora
    Dice il saggio:
    Non ci sono domande difficili, esistono solo risposte che non conosciamo!
    "Se qualcosa può andare male, lo farà" - Murphy

  4. #4
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Se permetti ti consiglio l'utilizzo di un'alternativa più leggera di swfobject, scritta da un utente di questo forum, lo script si chiama "anyIEActiveX" e, oltre a semplificare la scrittura del codice che gestisce la pagina, è anche più facile da applicare. Se ti va trovi il thread in cui se n'è parlato a questo indirizzo: http://forum.html.it/forum/showthrea...ighlight=satay

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 © 2026 vBulletin Solutions, Inc. All rights reserved.