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

    richiamare nome istanza

    Salve a tutti, ho un mc con nome istanza "Mio Movie"
    in questo mc ho messo questa azione:

    codice:
    on (rollOver) {
    	trace("nome= "+this._name);
    	menuDx._visible = false;
    }
    non mi traccia il nome dell'istanza, mentre mi nasconde menuDx.
    Il mc è su level0

    Cosa potrebbe essere???

    Grazie, ciao.

  2. #2
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    un pulsante dentro un gestore on() non rileva la sua posizione ma quella della sua timeline di giacienza, quindi this nel tuo caso equivale a _root o _level0

  3. #3
    Perdonami, ma non riesco proprio a capire come devo fare, ho provato a sostituire this con _level0._name o con _root._name ma non mi restituisce nulla, potresti darmi un suggerimento???
    Grazie

  4. #4
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    se devi rintracciare automaticamente il nome del pulsante, non puoi agire in questo modo, devi utilizzare la timeline per assegnare gli eventi ai pulsanti e dentro l'evento il this si rivolge esattamente al pulsante a cui viene applicato, quindi se ad esempio un pulsante si chiama "pinco" e gli assegni questo codice (sulla timeline principale):
    Codice PHP:
    pinco.onRelease = function () {
    trace(this);

    otterrai in output "pinco"

  5. #5
    Perdona la mia insistenza and80, e ti ringrazio per la tua pazienza, ma vorrei spiegarti megli il mio problema, in modo che tu possa consigliarmi nel migliore dei modi:

    io ho una serie di pulsanti, ognuno ha lo stesso codice all'interno:
    (lo stesso codice è lo stesso tranne che per la dicitura "locali notturni")

    codice:
    on (rollOver) {
    	_root.riferimenti.rif("locali notturni")
    	riferimenti._visible = true;
    }
    on (rollOut) {
    	riferimenti._visible = false;
    	_root.riferimenti.gotoAndStop(1);
    }
    on (release) {
    	getURL("http://www.mioSito.est/riferimenti.asp?nome=locali notturni");
    }
    pseudo
    codice:
    locali notturni - come ho spiegato sopra è il nome istanza del pulsante che è anche il nome della pagina da visitare;
    riferimenti - è un mc con la descrizione saliente del riferimento;
    _root.riferimenti.rif - è una funzione che risiede in riferimenti e passa in parametro "locali notturni" che fa vedere quel determinato riferimento.
    al passaggio del mouse sul pulsante appare l'mc riferimenti che fa vedere la descrizione, e cliccandovi si apre la pagina riferimenti.asp che passa il parametro "locali notturni" nella querystring e di conseguenza fa vedere dinamicamente le informazioni sui locali notturni.

    Il problema sta nel fatto che tutti i pulsanti hanno lo stesso codice, ma l'unica differenza sta in "locali notturni", allora ho pensato di creare una funzione che crea lo stesso codice, e che estrapola il nome istanza del pulsante, e va a sostituirlo nella funzione in questo modo:

    code]
    on (rollOver) {
    _root.riferimenti.rif(NOME ISTANZA)
    riferimenti._visible = true;
    }
    on (rollOut) {
    riferimenti._visible = false;
    _root.riferimenti.gotoAndStop(1);
    }
    on (release) {
    getURL("http://www.mioSito.est/riferimenti.asp?nome="+NOME ISTANZA);
    }
    [/code]

    Ti pregherei di indirizzarmi sulla soluzione, ringraziandoti nuovamente per la tua pazienza.

  6. #6
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    personalmente agirei in maniera completamente diversa da come l'hai impostata, considerato che attualmente devi comunque inserire la funzione su ogni pulsante e che non avrebbe gran senso in questo caso una sottigliezza come quella che vuoi improntare

    quello che farei è di inserire in un array tutti i nomi dei tuoi pulsanti e poi creare un ciclo di assegnazione delle azioni in modo da limitare le righe di codice e da tenere lo stesso ordinato sul frame della timeline principale, ad esempio per due pulsanti:

    Codice PHP:
    var p:Array = ["locali_notturni""locali_diurni"];
    for(var 
    i:Number=0i<p.lengthi++) {
        var 
    this[p[i]];
        
    c.onRollOver = function () {
            
    _root.riferimenti.rif(this._name)
            
    _root.riferimenti._visible true;
        }
        
    c.onRollOut = function () {
            
    _root.riferimenti._visible false;
            
    _root.riferimenti.gotoAndStop(1);
        }
        
    c.onRelease = function () {
            
    getURL("http://www.mioSito.est/riferimenti.asp?nome="+this._name);
        }

    ps. questa è UNA soluzione, per me è la migliore ed è quella che applico solitamente ai miei lavori, poichè l'uso di un array ti consente un controllo migliore e aiuta a velocizzare e manutenere il lavoro in maniera più rapida (metti il caso che un giorno tu debba aggiungere un pulsante, aggiungi solo la voce nell'array e hai fatto)

  7. #7
    si, non male, dovrei inserire il tuo codice nella linea principale del filmato, ma per richiamarlo nel pulsante???

    A dire il vero per me sarebbe il massimo se si potesse trascinare il pulsante nel filmato e dargli il nome istanza, ed evitare di toccare il codice, in quanto questo lavoro potrebbe farlo chiunque.


  8. #8
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Originariamente inviato da DarioMarco
    si, non male, dovrei inserire il tuo codice nella linea principale del filmato, ma per richiamarlo nel pulsante???
    non ce n'è bisogno, lo fa già quel piccolo listato


    Originariamente inviato da DarioMarco
    A dire il vero per me sarebbe il massimo se si potesse trascinare il pulsante nel filmato e dargli il nome istanza, ed evitare di toccare il codice, in quanto questo lavoro potrebbe farlo chiunque.
    non lo puoi fare, ma puoi fare in modo che il pulsante venga aggiunto al filmato solo inserendone il nome nell'array, giusto quello che dicevo riguardo alla velocità di gestione, chiaramente però deve esserci un codice un tantino più raffinato alla base (che inserisca il pulsante anche nelle giuste coordinate riferendosi a quelli precedenti, ad esempio una lista di pulsanti in verticale distanziati tra loro da alcuni pixel ecc...)

  9. #9
    grazie and80, ho capito che avrò molto da fare

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.