Jump to content
Sign in to follow this  
guest

Info su Javascript

Recommended Posts

Ho un problema che non so come risolvere al meglio.

 

Dunque, ho una funzione di nome "paperino" dentro un namespace chiamato "paperopoli":

 

var top.paperopoli = new Object;
top.paperopoli = {
  paperino: function(parametro) {
     mioOggetto = new Object();
     mioOggetto.vai({
        parametro1: parametro
        ,success: function(e) {
           alert('ok');
        }
        ,failure: function(e) {
           alert('ko');
        }
     })
  }
}

 

Fin qui tutto ok, se richiamo la funzione in questo modo:

top.paperopoli.paperino('ciao');

tutto funziona come previsto.

 

Il problema nasce dal fatto che questa funzione deve essere richiamata da due posti differenti in maniera leggermente diversa.

Ad esempio, se richiamata dal frameX (sono in una micro-applicazione con due frame), la funzione deve essere eseguita normalmente, se invece richiamato dal frameY, il mio oggetto deve essere istanziato SENZA gli elementi "success" e "failure".

 

Come si può fare?

Esiste un modo per identificare il frame o la posizione DOM da cui viene richiamata la funzione?

Share this post


Link to post
Share on other sites

E' quello che vorrei evitare... Preferivo farlo in maniera dinamica.

Al momento ho tamponato verificando la presenza di un elemento nel frameX. Se richiamo la funzione da dentro il frameX, l'elemento sarà presente, quindi eseguo determinato codice...

Share this post


Link to post
Share on other sites

E' una funzione richiamata da due bottoni, in due frame differenti.

Potrei aggiungere un elemento indicante 'dove sono' all'oggetto parametro che viene passato alla funzione, ma preferirei evitare, preferivo riconoscere in automatico da dove sto richiamando la funzione.

Share this post


Link to post
Share on other sites

serve per estendere un'oggetto, ci puoi aggiungere proprietà e metodi

aggiungi la funzione "paperino" direttamente dentro il bottone oppure dentro il frame, così puoi usare tutti i metodi/proprietà che ha i bottone (o frame) anche da "paperino"

Share this post


Link to post
Share on other sites

lascia perdere, sono convinto che non funzionerebbe, o meglio funzionerebbe solo su alcuni browser. Su IE < 8 non puoi usare HTMLButtonElement.

forse con event ...

 

non lavoro mai coi frame, non ti sono di molto aiuto

 

edit: ma qual'è la discriminante per farlo agire in un modo o in un altro? magari si trova una strada alternativa

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×