Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it L'avatar di amamax
    Registrato dal
    Feb 2001
    Messaggi
    562

    EVAL() ...perchè non funziona?

    QUando in una funzione ricevo per esempio un valore, di solito, se questo valore lo devo utilizzare come il nome di una istanza di movieclip, allora la metto dentro un EVAL() in modo da memorizzarla in una variabile da usare come contenitore del nome della mia istanza.

    Però, lavorando con Flash Comm Server, ricevo una variabile dal mio main.asc presente sul server, dal comando send in questo file:

    application.user_so.send("deleteUser",client.name) ;

    A tutti gli utenti verrà mandato il valore della variabile alla funzione deleteUser.
    Ora...nella funzione uso il eval come descritto precedentemente ma, anche se faccio trace sulla variabile ricevuta, avendo come risultato il nome dell'utente come da norma, se applico a questa variabile il comando eval, questa mi restituisce un "undefined".
    Per me questo è MICIDIALE, perchè quel nome mi serve per gestire certi movie clip presenti su tutte le macchine clienti. Scrivo qui di seguito la funzione client deleteUser:

    user_so.deleteUser=function(client){
    trace(client);
    delAvatar=eval(client);
    trace(delAvatar);
    removeMovieClip(avatarArea.delAvatar);
    };

    Come detto prima, il primo trace mi da perfettamente il nome che mi serviva, il contenuto della variabile. Invece il secondo trace mi da "undefined" e quindi quando vado a realizzare il remove, chiaramente non mi da risultati.
    Come posso risolvere la questione???

  2. #2
    Utente di HTML.it L'avatar di alpeweb
    Registrato dal
    Oct 2002
    Messaggi
    1,691
    immagino che così tu abbia già provato.
    user_so.deleteUser=function(client){
    removeMovieClip(avatarArea.client);
    };

  3. #3
    Utente di HTML.it L'avatar di negatyve
    Registrato dal
    Feb 2001
    Messaggi
    9,479
    codice:
    /* supponendo che avatarArea stia 
    nella stessa timeline in cui giace lo script*/
    user_so.path = this;
    user_so.deleteUser = function(client)
    {
    	trace(client);
    	this.path.avatarArea[client].removeMovieClip();
    };

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.