[Création Popup] Ouverture sur page d'accueil

xavier1063 Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -  
 ludo -
Bonjour à tous,
Je suis en train de développer un site mais je rencontre quelques difficultés. Je vous explique :

Je souhaite ouvrir un popup contenant le lecteur flash "Dewplayer" lorsque l'on arrive sur la page d'accueil du site. Le popup est crée et fonctionne.

Lorsque je lance le site, la page d'accueil s'affiche et le popup se lance (et joue donc de la musique). Je peux naviguer sur le site, la musique ne se coupe pas.

Mais lorsque je retourne sur la page d'accueil, ça me lance un deuxième popup. Et ainsi de suite à chaque fois que je retourne sur ma page d'accueil, un popup se lance... lançant donc une fois de pls la musique.


Ma question est donc la suivante :

-> Comment faire pour que le popup ne se lance qu'une fois au démarrage et qu'il ne se relance pas à chaque fois que je retourne sur la page de démarrage.

Merci d'avance pour vos réponses.
A voir également:

5 réponses

alain42
 
J'ai retrouvé ce que j'avais fait il y qqs temps:

/*
Fonction qui par un cookie javascript permet de n'afficher un popup q'une seule fois 
*/
function aff_popup_unique(fichier,winName,features){
	if(ScanCookie("dejapopup_infos")==0){
		window.open(fichier,winName,features);
		CreationCookie("dejapopup_infos","oui",false)
	}
}		

function ScanCookie(variable){
	var cook = document.cookie;
	variable += "=";
	var place = cook.indexOf(variable,0);
	if (place <= -1) {
		return("0");
	}
	else {
		var end = cook.indexOf(";",place)
		if (end <= -1) {
			return(unescape(cook.substring(place+variable.length,cook.length)));
		}
		else {
			return(unescape(cook.substring(place+variable.length,end)));
		}
	}
}

function CreationCookie(nom,valeur,permanent){
	if(permanent){
		var dateExp = new Date(2020,11,11);
		dateExp = dateExp.toGMTString();
		var ifpermanent = '; expires=' + dateExp + ';';
	}
	else {
		ifpermanent = '';
	}
	document.cookie = nom + '=' + escape(valeur) + ifpermanent;
}
6
sash28
 
Bonjour, alain42,

Je viens de voir ton script pour l'ouverture d'un pop up une seule fois à l'ouverture d'un site. Je désirerais moi, ouvrir une page avec un" include php" gràce à cela, est-ce possible?

Sinon, comment appeler ces fonctions pour ouvrir cette pop-up à l'ouverture de la page index.php?

MErci de ton aide.

Steph
0
alain42
 
En même temps que tu ouvres ton pouup la première fois (par Javascript je suppose), tu pose un cookie (par javascript) et tu viens le lire.

Donc au chargement page acceuil:

tu lance par onLoad dans la balise body une fct JS qui :

- va lire si cookie existe
- si non => ouvre le popup et pose le cookie
- si oui on ne fait rien

Vas voir sur un moteur de recherche comment poser et lire un cookie par Javascript
0
stefane
 
Bonjour,

je trouve le scrip que tu as déposé ainsi que son utilitée tres intéréssante.
je ne suis pas expert du tout dans le language HTML, je n'arrive donc pas a faire fonctionner ce script

je ne sais pas quelles valeurs mettre ou, les nom, la page appellée, etc etc.


Sans vouloir abuser si je pouvais avoir toutes les explication manquantes...

de plus G rajouté les script
comme je l'ai annoncé je ne suis pas fort !

d'vavance merci

PS si plus facile pour toi MSN-->calimmero<at>gmail.com


<script type="text/javascript">
<!--
/*
Fonction qui par un cookie javascript permet de n'afficher un popup q'une seule fois
*/
function aff_popup_unique(Popup/firefox.html,winName,features){
if(ScanCookie("dejapopup_infos")==0){
window.open(fichier,winName,features);
CreationCookie("dejapopup_infos","oui",false)
}
}

function ScanCookie(variable){
var cook = document.cookie;
variable += "=";
var place = cook.indexOf(variable,0);
if (place <= -1) {
return("0");
}
else {
var end = cook.indexOf(";",place)
if (end <= -1) {
return(unescape(cook.substring(place+variable.length,cook.length)));
}
else {
return(unescape(cook.substring(place+variable.length,end)));
}
}
}

function CreationCookie(nom,valeur,permanent){
if(permanent){
var dateExp = new Date(2020,11,11);
dateExp = dateExp.toGMTString();
var ifpermanent = '; expires=' + dateExp + ';';
}
else {
ifpermanent = '';
}
document.cookie = nom + '=' + escape(valeur) + ifpermanent;
}
//-->
</script>
0
xavier1063 Messages postés 2 Date d'inscription   Statut Membre Dernière intervention  
 
Merci pour ta réponse alain42, ça a l'air de fonctionner.

Je m'explique : Lorsque je lance la page d'accueil pour la première fois, la musique se lance dans le popup. Je navigue sur d'autre page du site et quand je reviens sur la page d'accueil, aucun autre popup ne se lance. Donc jusque là ça marche.

Mais lorsque je ferme le entièrement le site et que je reviens dessus, le popup ne se lance plus. Est-ce que ça a quelque chose à voir avec le cookie et la ligne de code suivante ?
-> var dateExp = new Date(2020,11,11);

Si oui, ça voudrait dire que le cookie existe jusqu'au 11/11/2020 et donc c'est normal qu'il ne se relance pas.

Mais peut-on supprimer le cookie lorsque l'on ferme entièrement le site ?


Merci d'avance.
0
Alain42
 
Essaye de jouer sur la date d'expiration du cookie,si on n'en met pas, le cookie s'efface automatiquement quand on ferme le navigateur.

Effectivement pb si on sort du site et que l'on y revient sans fermer le navigateur.
(est ce que ce cas se produira souvent ?)

Là je ne vois pas de solution pour le moment. Peut être que quelqu'un du forum en a une autre ??
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ludo
 
Bonjour a tous, bonjour alain42, je fais remonter un vieux post qui commence a dater, mais je viens de tomber par hazard sur le script d alain.
Cela corresponds a ce que je cherche, c'est a dire a n ouvrir qu une fois le pop up,lorsqu on navigue sur un site ou ce script est inséré dans toutes les pages du site, cela fonctionne fort bien. A CONDITION QUE LA FENETRE POP UNDER soit ouvert au moins UNE fois.
Le soucis est que : si le visiteur bloque les pop up, le compteur d' anti pop up (de IE7 par exemple) compte chaque ouverture/Rafraichissement/navigation . cela peut être assez génant d'entre et voir le compteur s'incrementer, ne peut on pas faire autrement pour stocker l'information, que le script à été executer une fois ?

voir par exemple mon site, sur laquel j'y ai insere le script sur toutes les pages : faites des essais pour illustrer ce que je raconte : avec filtre pop up ouvert/fermé ... https://www.legrenierdesbonnesaffaires.fr/
0