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

    2 funzioni, 2 onEnterFrame, stesso parametro movieClip

    Ciao,

    descrivo brevemente la situazione:

    ho 2 funzioni con un parametro movieClip (lo stesso per entrambe) ognuna delle quali sul parametro applica un onEnterFrame.

    function uno(o:MovieClip):Void{
    o.onEnterFrame=function():Void{
    //codice da eseguire
    }
    }

    function due(o:MovieClip):Void{
    o.onEnterFrame=function():Void{
    //codice da eseguire diverso dal precedente
    }
    }

    carico immagini esterne con movieClipLoader e all' onLoadInit assegno al classico target_mc le due funzioni:

    listener.onLoadInit = function(target_mc) {
    target_mc.onRollOver = function():Void {
    uno(target_mc);
    due(target_mc);
    }
    }

    le funzioni assegnate funzionano entrambe ma NON contemporaneamente, nel senso che se ne commento una funziona l'altra e viceversa, ma se le assegno entrambe svolge solo la prima.

    potrei decidere di incorporare entrambi gli onEnterFrame all'interno della stessa funzione, ma hanno compiti diversi e preferisco quindi tenerli separati.

    se inoltre metto un trace(o._name) all'interno delle funzioni, l'output è corretto (visualizza 2 volte il nome del contenitore) quindi sono proprio i 2 onEnterFrame simultanei che non vengono eseguiti.

    qualche idea sul perchè di questo comportamento?

  2. #2
    http://www.developmentnow.com/g/69_2...-dont-work.htm

    pare proprio che 2 onEnterFrame sullo stesso mc non possano essere eseguiti simultaneamente, il che è un bel problema.

  3. #3
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    l'evento onEnterFrame può avere una sola esecuzione utile ed ogni qualvolta lo si riassegna, si sovrascrive la funzione precedente, per questo non possono funzionarne due contemporaneamente... ma volendo puoi creare al volo dei clip forfettari che svolgano l'enterFrame al posto del clip, eliminandoli insieme al loro enterFrame nel momento in cui non servono più

  4. #4
    Originariamente inviato da and80
    l'evento onEnterFrame può avere una sola esecuzione utile ed ogni qualvolta lo si riassegna, si sovrascrive la funzione precedente, per questo non possono funzionarne due contemporaneamente... ma volendo puoi creare al volo dei clip forfettari che svolgano l'enterFrame al posto del clip, eliminandoli insieme al loro enterFrame nel momento in cui non servono più
    si, ho trovato anche un'altra pagina in cui si parlava di questo e obiettivamente è anche logico che sia così, anche se avere la possibilità di poterne lanciare più di uno sarebbe comodo a volte.

    per quanto riguarda i clip forfettari, non ho ben chiaro cosa intendi. io ho la necessità di assegnare l'onEnterFrame al target_mc ma tu mi dici: crea al rollover (es del codice precedente) un nuovo mc->assegna a questo un onEnterFrame->assegna le modifiche di proprietà calcolate da questo onEnterFrame a target_mc (che a questo punto non avrà nessun onEnterFrame su di esso) e quando ho terminato il calcolo cancello l'mc di "appoggio".

    giusto?

  5. #5
    ha funzionato senza problemi, ho dovuto soltanto passare 2 parametri alla funzione, di cui 1 è il movieClip appena creato.

    grazie del workaround.


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.