Posez votre question Signaler

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

xavier1063 2Messages postés 22 août 2007Date d'inscription - Dernière réponse le 20 avril 2009 à 02:00
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.
Lire la suite 

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

7 réponses
Réponse
+5
moins plus
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;
}
sash28 - 16 oct. 2008 à 16:12
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
Ajouter un commentaire
Réponse
+0
moins plus
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
stefane - 30 oct. 2007 à 18:07
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>
Ajouter un commentaire
Réponse
+0
moins plus
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.
Ajouter un commentaire
Réponse
+0
moins plus
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 ??
Ajouter un commentaire
Réponse
+0
moins plus
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é ... http://www.legrenierdesbonnesaffaires.fr/
Ajouter un commentaire
Ce document intitulé « [Création Popup] Ouverture sur page d'accueil » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?