Newsgroup: it.comp.lang.javascript
Titolo: onload close Pop up

Ci sto provando da 1 ora...
Si apre la pagina A che sull'onload apre la popUP "ActiveDictionary"
var WinName = 'ActiveDictionary'
dalla pagina A vado alla B e vorrei che durante l'evento nel body onload
chiudesse la mia popup se aperta.
Per far questo penso che non ci voglia uno script apposito, almeno spero.
Ho capito che una pop up si può chiudere con window.close()
oppure window.opener.close() per chiudere la finestra che ha aperto la
corrente,
ma non ho capito come faccio a chidere una popUP che ha un nome, se
esistente, da una seconda pagina.
Grazie.
<body onload="??

Se cambi pagina perdi il riferimento alla finestra "figlia" aperta...mai
provato, ma la vedo male (sentiamo però gli altri, magari agendo sul nome si
trova qualcosa).
Come alternativa potresti chiudere la popup onunload della pagina A

 Come alternativa potresti chiudere la popup onunload della pagina A
No perchè è una pagina di inserimento e richiama sempre sestessa, quindi
anche l'apertura della POPUP, fino a quando non si preme "Altra pagina" che
porta effettivamente ad un'altra lasciando sempre la pop up aperta.
Se faccio unload, come anch'io avevo pensatolo farebbe ad ogni inserimento
per poi aprirla ancora subito...
-----------
Chiamo pagina "A"
Si apre "A" e la PopUp
Inserisco dati in "A" invio, vengo nuovamente riportato ad "A" e la PopUp
effettua un refresh (e mi sta bene)
Ora da "A" non inserisco + nulla e decido di passare oltre...
Passo a "B" per mezzo di un click su "A" e ovviamente la mia PopUp è ancora
li e non la vorrei perchè riguarda solamente "A".
Pensavo fosse facile, ho trovato dei mega script in giro, ma credevo che
bastava un comando in linea...
Vediamo cosa dicono gli altri altrimenti devo smanettare.
TNKS.
Alen

 ha scritto nel messaggio
news:c0djgn$15op9a$1...@ID-147253.news.uni-berlin.de...
Idea se metto lo script nella stessa pagina, praticamente se clicco su A mi
viene ricaricata la stessa e si apre il PopUp,
se invece clicco su B vado ad un'altra e potrei farlo chiudere se aperto
senza incasinarmi la vita...
con questa la apro sull'onload:
function openBrWindow(){
var H = screen.height
var H = (H-100)
var W = screen.width
var Fromleft = (W-291)
var Page = 'Active_Dictionary.asp?IDarticolo=<%=LastID%>&IDcorpo=<%=y%>'
var WinName = 'ActiveDictionary'
var Features =
'scrollbars=yes,resizable=yes,width=291,height='+H+',left='+Fromleft+',top=4
0,screenX='+Fromleft+',screenY=40'
  window.open(Page,WinName,Features);
}
<body bgcolor="#FFFFFF" marginwidth="0" marginheight="0" topmargin="0"
leftmargin="0" onLoad="openBrWindow()">
Ma con questo non si chiude?
Sbaglio qualche cosa?
onClick="ActiveDictionary.close();"


se si prova ad usare un documento terzo e delegando ad esso il contenuto
degli estremi delle finestre aperte è possibile gestire ciò
ovviamente lo si può fare o con una win nascosta o con i cookies
tutti  le finestre dovrebbero in sede di onload far riferimento a questo
terzo contenitore e crearlo se non esiste
e solo l'ultimo onunload deve chiuderlo
dal primo onload e l'ultimo onunload,  tutto è possibile :-)

Mi dice che "RealWindow"
non è definito e non va!!!
??????
-------------------
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"
http://www.w3.org/TR/html4/loose.dtd
">
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript" type="text/JavaScript">
function openBrWindow(){
var H = screen.height
var H = (H-100)
var W = screen.width
var Fromleft = (W-291)
var Features =
'scrollbars=yes,resizable=yes,width=291,height='+H+',left='+Fromleft+',top=4
0,screenX='+Fromleft+',screenY=40'
var RealWindow = window.open('inserire.htm','ActiveDictionary',Features);
  //document.write(H);
  //document.write(W);
}
</script>
</head>
<body onLoad="openBrWindow();">
<a href="#" onClick="RealWindow.close();">GGGGG</a>
</body>
</html>

 </html>
Ok ho capito per chiuderla dovrebbe essere il nome di una variabile globale,
e se invece volessi lasciare lo script all'interno delle funzione e far
riferimento ad essa per la chiusura?

 Togli "var" prima di RealWindow.
fatto e effettivamente funziona.....
ma cosa cambia?
Me lo spieghi per piacere...non sarebbe una variabile implicita? E'
considerata globale anche se interna alla funzione?
GRAZIE
Alen

 wrote:
Chiarissimo...ho capito!
Non pensavo che internamente senza "var" divenissero globali...una volta
scatenata la funzione...
GRAZIE!
Che chicca!