prova a modificare un poco la logica. Tu fai:

A apre popup B. In B mia_funzione manipola elementi di A

io farei così:

in A creo una funzione che accetta 0 o più parametri:

function mia_funzione(parametro1, parametro2, ..., parametron){}

in B, non manipoli direttamente gli elementi di A, ma ti limiti a lanciare la funzione passando dei parametri:

se(chiamante ee chiamante.funzione) chiamante.funzione(parametro);

con questo modo ho risolto abbastanza bene questo problema