OVH Cloud OVH Cloud

Evenement sur fermeture

6 réponses
Avatar
Saad Saad
Bonjour,

y'a t'il un évènement qui se déclenche uniquement lors de la fermeture
d'un popup ?

unload et onbeforeunload se déclenche chaque fois que la page se recharge

le but est de recharger ma fenêtre mère uniquement lors de la fermeture
de mon popup


merci

--
Saad Saad

6 réponses

Avatar
O.L.
Saad Saad a couché sur son écran :
Bonjour,

y'a t'il un évènement qui se déclenche uniquement lors de la fermeture d'un
popup ?

unload et onbeforeunload se déclenche chaque fois que la page se recharge

le but est de recharger ma fenêtre mère uniquement lors de la fermeture de
mon popup


merci


Un événement je ne pense pas, par contre tu peux tester régulièrement
dans ta page mère l'état de ta popup, voir si elle est fermée ou non.

var MyWin = window.open(...);
setInterval("if(MyWin.closed) location='autrepage.htm';", 250);

@+

--
Olivier Ligny
Créateur web free-lance / www.cyber-tamtam.net

Avatar
Olivier Miakinen

y'a t'il un évènement qui se déclenche uniquement lors de la fermeture d'un
popup ?

unload et onbeforeunload se déclenche chaque fois que la page se recharge

le but est de recharger ma fenêtre mère uniquement lors de la fermeture de
mon popup


Un événement je ne pense pas,


Toi, tu n'es jamais tombé sur un site de spammeurs de m..., avec une
popup qui s'ouvre quand tu essayes d'en fermer une autre ! Je ne sais
pas comment ils font, mais c'est certainement possible (onunload, sans
doute). En revanche, il ne faut bien évidemment pas les imiter sous
peine de faire fuir immédiatement tous ses visiteurs.

par contre tu peux tester régulièrement
dans ta page mère l'état de ta popup, voir si elle est fermée ou non.

var MyWin = window.open(...);
setInterval("if(MyWin.closed) location='autrepage.htm';", 250);


Oui, c'est aussi une solution.


Avatar
Démosthene
Saad Saad wrote:
Bonjour,

y'a t'il un évènement qui se déclenche uniquement lors de la fermeture
d'un popup ?

unload et onbeforeunload se déclenche chaque fois que la page se recharge

le but est de recharger ma fenêtre mère uniquement lors de la fermeture
de mon popup


merci



Bonsoir

Dans votre popup vous écrivez l'événement "on unload" dans lequel vous
actionnez un gestionnaire dans votre page appelante.

Pour la popup, la page appelante est window.opener, je crois me souvenir.

Si vous ne trouvez pas, postez vos protypes de code (les noms de
fonctions) nous essairons de débrouiller le terrain :)

Bon courage

Démosthène

Avatar
Saad Saad
Saad Saad wrote:

Bonjour,

y'a t'il un évènement qui se déclenche uniquement lors de la fermeture
d'un popup ?

unload et onbeforeunload se déclenche chaque fois que la page se recharge

le but est de recharger ma fenêtre mère uniquement lors de la
fermeture de mon popup


merci



Bonsoir

Dans votre popup vous écrivez l'événement "on unload" dans lequel vous
actionnez un gestionnaire dans votre page appelante.

Pour la popup, la page appelante est window.opener, je crois me souvenir.

Si vous ne trouvez pas, postez vos protypes de code (les noms de
fonctions) nous essairons de débrouiller le terrain :)

Bon courage

Démosthène


Comme il est écrit dans mon message, les évènements unload et
onbeforeunload
se déclenche quand la page se recharge.

et mon popup avant d'être refermer doit se recharger quelques fois.

Je le dis ici, ceci n'est pas pour pour un site web mais pour une
application.

donc, je sais recharger la fenêtre mère en même temps que le popup se
recharge, mais je voudrais qu'il se recharge uniquement 1 seul fois,
lors de la fermeture.


Avatar
Olivier Miakinen

[ dizaines de lignes de citations inutiles ]


Voir le chapitre 3.a de http://www.giromini.org/usenet-fr/repondre.html

Comme il est écrit dans mon message, les évènements unload et
onbeforeunload se déclenche quand la page se recharge.

[...]

donc, je sais recharger la fenêtre mère en même temps que le popup se
recharge, mais je voudrais qu'il se recharge uniquement 1 seul fois,
lors de la fermeture.


Ne suffit-il pas, lors du onunload, de tester si la fenêtre fille est
toujours là ou non ? Si oui, tu ne fais rien, sinon tu recharges la
fenêtre mère. Et s'il faut un petit temps à la fenêtre fille pour se
recharger, ben tu lances un petit timer avant.

--
Olivier Miakinen
Aidez Saburi à rester près de sa famille et poursuivre ses études
en France, signez la pétition :
<http://www.fcpe94.ouvaton.org/article_petition.php3?id_article=9>

Avatar
ASM

Comme il est écrit dans mon message, les évènements unload et
onbeforeunload
se déclenche quand la page se recharge.

et mon popup avant d'être refermer doit se recharger quelques fois.

Je le dis ici, ceci n'est pas pour pour un site web mais pour une
application.


donc il faut prévoir qquechose d'à peine plus compliqué ...
et à mettre dans chaque page chargée dans le popup

la fonction d'ouverture du popup dans fenêtre mère
serait, par exemple :
function popup(page) {
if(!!truc && !truc.closed) '';
else
truc=window.open('','','width00,height00');
truc.location = page;
truc.focus();
}

fichier du(des) popup(s) :

<html>
<script type="text/javascript">
quitter = false;
cepopup = true;
</script>
<body
onunload="if(quitter) opener.location=opener.location;
else
if(cepopup) opener.popup(self.location);">

<h2>les liens de chargements dans le popup :</h2>
<p><a href="page1.htm"
onclick="cepopupúlse;
opener.popup(this.href);
return false;">page 1</a>
<p><a href="page2.htm"
onclick="cepopupúlse;
opener.popup(this.href);
return false;">page 2</a>

<h2>le bouton pour pouvoir fermer</h2>
<button onclick="quitter=true;self.close();"> Fermer </button>
</body></html>

donc, je sais recharger la fenêtre mère en même temps que le popup se
recharge, mais je voudrais qu'il se recharge uniquement 1 seul fois,
lors de la fermeture.


j'avais compris que tu voulais :
je voudrais qu'elle se recharge uniquement lors de la fermeture du popup

exemple donné sous toutes réserves : pas essayer
voir à voir à parfaire si besoin avec onbeforeunload ?
et on doit pouvoir se contenter de la seule variable 'cepopup'


--
Stephane Moriaux et son [moins] vieux Mac