Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1

    Problema mouse troppo veloce su "on (rollOut)"

    Ciao!
    Non sapevo come descrivere il problema nel titolo... cmq:
    Ho fatto una navigazione con Flash MX.
    Quando vado "on (rollOver)" su un punto di menu, eseguo una certa azione (il punto di menu si trasforma di grandezza e posizione). Il problem sta se esco con il mouse troppo velocemente, è come se non captasse l' "on (rollOut)" e il punto di menu mi rimane selezionato.
    Cosa posso fare per evitare questo inconveniente?
    Ciao e grazie
    :quipy:
    Netta

  2. #2

    Re: Problema mouse troppo veloce su "on (rollOut)"

    Originariamente inviato da netta13
    Ciao!
    Non sapevo come descrivere il problema nel titolo... cmq:
    Ho fatto una navigazione con Flash MX.
    Quando vado "on (rollOver)" su un punto di menu, eseguo una certa azione (il punto di menu si trasforma di grandezza e posizione). Il problem sta se esco con il mouse troppo velocemente, è come se non captasse l' "on (rollOut)" e il punto di menu mi rimane selezionato.
    Cosa posso fare per evitare questo inconveniente?
    Ciao e grazie
    :quipy:
    Netta
    Intendi dire che rimane grande e spostato di posizione?

    Che codice usi? postalo.

  3. #3
    Ciao passavign!

    Eccolo. P.es. ho un bottone di nome "partner".
    Nel primo frame, l'azione sul button è:
    on (rollOver) {
    gotoAndPlay(5);
    }

    Nel frame 5 inizia l'animazione.
    Nel frame 7:
    stop();
    Azione sul button:
    on (rollOut) {
    if (_root.selected != "partner") {
    play();
    }
    }
    Spiegazione: prendo la variabile "selected" dal querystring. Se gli passo "...navigation.swf?selected=partner", allora rimane su stop(); altrimenti parte l'animazione che fa tornare il button come prima.

    Funziona tutto perfettamente, solo se si è troppo veloci con il mouse, a volte (non sempre) succede che il button rimane selezionato, cioè come lo è nel frame 7.

    Spero di essere stata chiara!
    Grazie
    Anto.

  4. #4
    Allora NON è lo stesso filmato!

    O meglio, è lo stesso filmato, ma incorporato in pagine HTML diverse, vero?

  5. #5
    ok, rieccomi.

  6. #6
    Temo che il tuo problema NON sia di facile soluzione, per come lo hai impostato, di fatto c'è sempre un piccolo ritardo tra il caricamento del filmato ed il popolamento delle variabili.

    Però, a ben guardare il codice che hai scritto, forse il problema è un altro...

    La mia domanda è:
    > cosa c'è prima del frame 5 ?
    > l'animazione dei pulsanti è fatta direttamente sulla timeline principale?
    Ti chiedo questo perché, appena carichi il filmato, la condizione testata in questa istruzione:
    codice:
    on (rollOut) { 
        if (_root.selected != "partner") { 
            play(); 
        } 
    }
    probabilmente sarà vera, e quindi verrà eseguito il comando play().
    Ma a quel punto dov'è la testina di lettura?

  7. #7
    Tra il frame 1 e il frame 5 non c'è nulla.
    Sì, l'animazione si trova sulla timeline principale.

    Allora, forse vedendo la timeline in questo screenshot si capisce un po' come funziona.
    Prendiamo il punto di menu "Partner":
    L'azione sul button "partner" nel frame 1 è:
    on (rollOver) {
    gotoAndPlay(5);
    }

    Il frame 8 ha questa azione:
    stop();

    Il button "partner" nel frame 8 ha queste azioni:
    on (release) {
    getURL("partner.html", "_parent");
    stop();
    }
    on (rollOut) {
    if (_root.selected != "partner") {
    play();
    }
    }

    Il frame 12 ha questa azione:
    gotoAndPlay(1);

    Il button "partner" dal frame 13 in poi ha questa azione:
    on (rollOver) {
    gotoAndPlay(5);
    }

    Uguali tutti gli altri buttons.

    quì puoi vedere il navigatore in azione.

    Grazie e ciao intanto
    Nietta

  8. #8
    Scusa ho dimenticato di scrivere l'azione contenuta nel frame 1:

    if (selected == "partner") {
    gotoAndPlay(5);
    } else {
    stop();
    }

    Ciao

  9. #9
    Dunque, riepiloghiamo:
    > il tuo filmato è uno solo ma incorporato in pagine diverse
    > ogni volta che clicchi su un link, richiami una pagina nuova, quindi il filmato flash viene richiamato nuovamente, essendo già nella cache memory NON viene ricaricato ma riparte dal 1° frame
    > Per questo quando legge questa istruzione:
    if (selected == "partner") {
    gotoAndPlay(5);
    } else {
    stop();
    }
    la trova VERA e quindi salta subito al frame 5

  10. #10
    Esatto!
    P.es. nella pagina "kern.html", gli passo nel querystring "...navigation.swf?selected=kern".

    Nel primo frame del layer "kern" c'è l'azione:
    if (selected == "kern") {
    gotoAndPlay(29);
    } else {
    stop();
    }
    Nel frame 29 c'è:
    play();

    (parte l'animazione che va fino al frame 32)
    Nel frame 32 c'è:
    stop();

    ê sul button:
    on (release) {
    getURL("kern.html", "_parent");
    stop();
    }
    on (rollOut) {
    if (_root.selected != "kern") {
    play();
    }
    }

    Se on rollout la variabile selected non è "kern", continua l'animazione, quindi il punto di menu ritorna normale (piccolo e alla pos. originale). Se invece trova la variabile selected uguale a "kern", si stoppa e rimane così.

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.