Un clic = un lien + une popup (la page du popup ne t'appartient pas) qui se ferme automatiquement apres x seconde

Soyez le premier à donner votre avis sur cette source.

Snippet vu 13 410 fois - Téléchargée 23 fois

Contenu du snippet

Voila un moment que je cherche un code pour que quand je clic dans un lien une page s'ouvre et egalement une popup (laquelle la page du popup ne m'appartient pas et donc je ne peux pas mettre du code dans la page du popup) qui se fermera automatiquement apres quelques secondes. Puisque je change de page (la page qui n'est pas une popup et qui m'appartient) en cliquant dans le lien, ma variable ne fonctionne plus dans mon autre page (la page qui n'est pas une popup et qui m'appartient) et donc la nouvelle page ne peux pas executer:
setInterval("variable.close()",15000);
puisque cette variable appartient a la page precedent laquelle se trouvait le lien.
Bref j'ai cherché dans ma tete, j'ai réuni mes connaissances de debutant et aussi explorer quelque source de ce site et enfin j'ai combiné le tout pour finalement trouver une actuce ou truc pour faire cela.

Source / Exemple :


Dans la page index.php ou index.html
<HTML>
<HEAD>
<title>Ton titre</title>
</HEAD>
    <FRAMESET ROWS="0,*" frameborder="no" border="0" framespacing="0"> 
    <FRAME SRC="page1.htm" name="popup" scrolling="no" noresize> 
    <FRAME SRC="page2.php" name="aucun"> 
  </FRAMESET> 
</HTML>

Dans la page page1.htm
<HTML>
<HEAD>
<script language="javascript" src="popup.js">
</script>
</HEAD>
<BODY>
</BODY>
</HTML>

Dans la page page2.php (page plein ecran a 100%)
<HTML>
<HEAD>
</HEAD>
<BODY>
<a href="http://www.tonsite.com/tapage.php" OnClick="parent.popup.ouvrir()">Entrez dans ma page et ouvrez une popup</a>
</BODY>
</HTML>

Dans la page popup.js
function ouvrir(){
var varp ='"toolbar=0,location=0,status=0,menubar=0,scrollbars=1,width=410px,height=195px,';
f1 = window.open("http://www.site-ne-m-appatenant-pas.com", 'f1', varp + "left=0, top=0");
}

function fermer()
{ 
f1.close();
}

Dans la page fermer.js
setInterval("parent.popup.fermer()",15000);

Et dans le site http://www.tonsite.com/tapage.php
<HTML>
<HEAD>
<script language="javascript" src="fermer.js">
</script>
</HEAD>
<BODY>
ma page qui n'est pas une popup
</BODY>
</HTML>

Conclusion :


Attention l'extension de la page1 doit etre obligatoirement en htm et non pas en php, sinon ca marche pas.
15000 = 15 secondes. Voila, ca se peut que j'aille fait une faute quelquepart dans le code, il y a tellement de code a rentrer. Corrigez-moi si vous en voyez un. Attention je suis debutant..lol...
Voici un exemple: http://www.dbz-fantasy.hostgratos.net

A voir également

Ajouter un commentaire

Commentaires

Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
35
en php, tu devais avoir un problème de guillemets...

en tout cas, là, je ne vois pas la difficulté qui justifie le code initié... Ce code est basique, t'as juste un pauvre window.open et window.close... c'est directement recopié d'un tuto et adapté, mais t'as pas construit grand chose seul ici...
Messages postés
4
Date d'inscription
samedi 16 juillet 2005
Statut
Membre
Dernière intervention
30 septembre 2008

Tu ne fesait pas les tests en local ?

(Php est un language serveur, donc si tu n'avais pas easyphp ou concurrent, et que tu testais pas sur u nserveur il etait logique que cela ne marchait pas)
Messages postés
43
Date d'inscription
samedi 4 septembre 2004
Statut
Membre
Dernière intervention
9 janvier 2007

Parce que j'ai l'avais mis au debut en php et je croyais que mon code ne marchait. J'ai eu l'idée de le mettre en htm et ca a marché. Cependant je ne sais pas pourquoi.
Messages postés
1293
Date d'inscription
mardi 9 novembre 2004
Statut
Membre
Dernière intervention
21 mai 2015

"Attention l'extension de la page1 doit etre obligatoirement en htm et non pas en php, sinon ca marche pas."

Ah bon... et pourquoi... .. ?

@ tchaOo°
Messages postés
1044
Date d'inscription
lundi 7 mars 2005
Statut
Membre
Dernière intervention
13 juillet 2010
6
Pour le peu de code qu'il y a dans ta "source" voici quelques remarques :

- Les balises HTML sont soit tous en majuscule ou tous en minuscule, pas les deux en même temps.
- Un setTimeout serait mieux que de mettre un setInterval, puisque le code doit être exécuté une seul fois.
- Il manque l'attribut type pour tes balises script.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.