Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
914 connectés 

  FORUM HardWare.fr
  Programmation

  [Javascript] Comment faire un pop-up en sortie de site ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Javascript] Comment faire un pop-up en sortie de site ?

n°114478
Max Evans
Posté le 19-03-2002 à 22:07:44  profilanswer
 

Salut a tous :)
 
G cherché des scripts pour afficher une pop-up quand on pars de mon site :)
Les codes marchent, mais trop bien meme :(
 
Je m'explique, mon site est en PHP, avec un header.php, gauche.php, droite.php, footer.php, et les pages comme index.php, contacts.php
Je fe des includes pour ne pas faire de frames :)
 
G donc mis mon script ds gauche.php, mais le probleme est que a chaque fois k'on change de rubriques, par exemple, pour aller ds concacts.php, la pop-up s'ouvre ; c normal, le code crois k'on a kitté le site, alors k'on a juste chargé une autre page ...
 
En le mettant ds le index.php, ca marche bien, mais j'aimerais ne pas reprendre toutes mes pages une a une pour mettre le code dedans, car y en a environ 200 :(
 
A votre avis, je fe comment pour que la pop-up ne s'ouvre que quand le visiteur kitte le site ?
 
Je vous remercie infiniment ! :) :jap:

mood
Publicité
Posté le 19-03-2002 à 22:07:44  profilanswer
 

n°114740
alien_nan
Posté le 20-03-2002 à 10:28:08  profilanswer
 

salut,
 
tu prends ta frame du haut qui doit contenir un body, et tu ajoutes onUnload dedans. ca donne :
 
<body onUnload="javascript:window.open('ce_que_tu_veux_ouvrir';);">

n°114935
Max Evans
Posté le 20-03-2002 à 13:55:26  profilanswer
 

alien_nan a écrit a écrit :

salut,
 
tu prends ta frame du haut qui doit contenir un body, et tu ajoutes onUnload dedans. ca donne :
 
<body onUnload="javascript:window.open('ce_que_tu_veux_ouvrir';);">  




 
Salut,
 
Le probleme, c que justement, c pas une frame ...
En php, je fe des INCLUDE, du coup, la "frame" d'en haut se recharge a chaque fois, et le code croit que le visiteur est parti, mais c fo, il a juste changé de page :(

n°114944
youdontcar​e
Posté le 20-03-2002 à 14:09:57  profilanswer
 

tu as donc un truc avec <body onuload='mafenetre()'>
 
y'a sûrement moyen avec un peu de javascript : tu intercèptes onclick au niveau du document (<body onclick='mafonction()';), la fonction désactive la popup si on a cliqué sur un lien avec un truc comme :
 
if (event.srcElement.tagName == 'A';) window.onunload = null;

n°114947
Max Evans
Posté le 20-03-2002 à 14:14:48  profilanswer
 

Oue, voila, ca serait un truc comme ca ;)
En gros, ca donnerais ca, si g bien compris :

Code :
  1. si c un clic vers un lien du site'
  2. {
  3. pas de popup
  4. }
  5. sinon
  6. {
  7. popup}


 
Mais g jamais fais de javascript :(
Tu pourrais me filer un petit coup de main pleaze  :hello:


---------------
Envie d'un bol d'air ? Traxxas Revo 3.3
n°114952
youdontcar​e
Posté le 20-03-2002 à 14:24:32  profilanswer
 

ce que je vais te filer marchera pour ie, pour mozilla tu te démerderas :)  
 
dans ton cas, il suffit de rajouter n'importe où dans ta page html du code pour :
 
* rajouter la popup en cas de sortie du site
* disable la popup si on charge une nouvelle page du site
 
<script>
  function myPopup()
  {
    // ici tu rajoutes le code de ta popup
  }
  // la popup s'ouvrira lors du 'déchargement' :D de la page
  document.body.onunload = myPopup();
 
  // maintenant, on rajoute une fonction qui teste si on reste sur le site lorsqu'on clique sur un lien :
  function checkLink()
  {
    if (event.srcElement.tagName == 'A';) document.body.onunload = null;
    // ###
  }
  document.body.onclick = checkLink;
</script>
 
 
### : le comportement de la fonction fait que si tu fermes la fenêtre, la popup s'ouvrira, si tu cliques sur un lien de la page, elle ne s'ouvrira pas. tu peux rajouter du code pour tester la valeur du lien : si c'est un lien extérieur (eg google.com), tu peux également ouvrir ta popup à ce moment-là.
 
//
 
ce code n'est que pure spéculation car non testé, mais ça devrait marcher ;)

n°114954
Max Evans
Posté le 20-03-2002 à 14:31:03  profilanswer
 

Oki, merci infiniment !!!!
Je v tester le code :)
 
PS : Ds le body de ma page, je mets tjs ca ?
onuload='mafenetre()'
 
Encore merci ;)


---------------
Envie d'un bol d'air ? Traxxas Revo 3.3
n°114958
youdontcar​e
Posté le 20-03-2002 à 14:36:30  profilanswer
 

dans le script du haut, tu dois rajouter le code qui ouvre ta popup dans myPopup()
 
sinon,  
 
  <body onuload='myPopup()'>
et
  document.body.onunload = 'myPopup()'
 
sont strictement équivalents. le désavantage du 1er est que tu dois le mettre dans toutes les pages, l'avantage du second est que tu peux le mettre dans n'importe quelle page (n'importe quel include php).

n°114962
Max Evans
Posté le 20-03-2002 à 14:41:11  profilanswer
 

Dc g mis ca ds ma page :
 

Code :
  1. <script>
  2.   function myPopup()
  3.   {
  4. window.open("http://www.roswell-travel.com/prochainement.htm", "", "toolbar=no, location=no, directories=no, status=no, scrollbars=no, resizable=no, copyhistory=no, width=400, height=100, left=300, top=50" );
  5.   }
  6.   // la popup s'ouvrira lors du 'déchargement' :D de la page
  7.   document.body.onunload = myPopup();
  8.   // maintenant, on rajoute une fonction qui teste si on reste sur le site lorsqu'on clique sur un lien :
  9.   function checkLink()
  10.   {
  11.     if (event.srcElement.tagName == 'A') document.body.onunload = null;
  12.     // ###
  13.   }
  14.   document.body.onclick = checkLink;
  15. </script>


 
Le probleme, c ke la pop-up s'ouvre encore tout le temps :(
En bas a gauche de IE, g un truc erreur de javascript, je regarde, il dit k'il y a une erreur ligne 79 (C'est a dire cette ligne document.body.onunload = myPopup();, car 3)
 
G mal fais un truc ? ;)


---------------
Envie d'un bol d'air ? Traxxas Revo 3.3
n°114966
dropsy
et bonne chance surtout...
Posté le 20-03-2002 à 14:45:34  profilanswer
 

essayes avec onUnload . c peut être sensible au majuscule.

mood
Publicité
Posté le 20-03-2002 à 14:45:34  profilanswer
 

n°114967
Max Evans
Posté le 20-03-2002 à 14:45:57  profilanswer
 

Oki, merchi :)


---------------
Envie d'un bol d'air ? Traxxas Revo 3.3
n°114968
Max Evans
Posté le 20-03-2002 à 14:50:24  profilanswer
 

Effectivement, ca ne me fais plus l'erreur javascript, mais la pop-up s'ouvre encore tout le temps :(
Sinon, g remarqué (Avec Dreamweaver) qu'en mettant le U majuscule a onUnload, la couleur de ce texte ds la source devenait bleu, alors k'il etait noir ...
 
G fais la meme chose avec document.body.onclick = checkLink; en mettant un C majuscule a onClick, et le texte devient aussi bleu ...
 
Est-ce k'il y a encore d'autre chose a mettre en Majuscule ?
 
Encore merci a tout ;)  :hello:  :jap:


---------------
Envie d'un bol d'air ? Traxxas Revo 3.3
n°114970
jupiler
Un cousin...
Posté le 20-03-2002 à 14:54:41  profilanswer
 

les majuscules, c'est bon pour les éditeurs
 
mais ca marche bien sans


---------------
Je ne suis ni pour, ni contre, bien au contraire  
n°114975
Max Evans
Posté le 20-03-2002 à 15:00:18  profilanswer
 

Ha oki, merchi :)


---------------
Envie d'un bol d'air ? Traxxas Revo 3.3
n°114979
youdontcar​e
Posté le 20-03-2002 à 15:08:07  profilanswer
 

le coup du 'A' (ce que je t'ai filé) passe bien chez moi, mais il faudrait prendre en compte :
 
* quand on clique sur une image <a href=''><img></a> (pas bien compliqué)
 
* le refresh
 
* back & forward
 
c'est trop compliqué pour que je regarde maintenant ;)

n°114980
jupiler
Un cousin...
Posté le 20-03-2002 à 15:08:11  profilanswer
 

c'est pas plus mal de les mettre
 
d'abord pour le confort sous l'éditeut, et c'est toujours plus propre


---------------
Je ne suis ni pour, ni contre, bien au contraire  
n°115755
Max Evans
Posté le 21-03-2002 à 17:28:09  profilanswer
 

Re-Salut a tous :)
 
En fait, g créé une frame, et g mis le code dedans, maintenant, tout roule ! :)
 
Encore merci a vous  :jap:  :hello:


---------------
Envie d'un bol d'air ? Traxxas Revo 3.3

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation

  [Javascript] Comment faire un pop-up en sortie de site ?

 

Sujets relatifs
Sécurité d'un site Extranet[javascript]Activer une fenêtre qui est sur la barre des tache
[PHP JAVASCRIPT] Crée un lien hypertexte sur toute une ligne ..[Javascript] affecter une grande valeur à une chaine
[MYSQL] Erreur de sortie de requete: Select Count(*)[PHP ou JAVASCRIPT] Changer le backolor d'une ligne d'un tableau.....
[javascript]peut-on assigner 2 fonction à 1 événement[JavaScript] Manipulation d'une date : extraction de chaine
Date de sortie VB.net en francaissite web
Plus de sujets relatifs à : [Javascript] Comment faire un pop-up en sortie de site ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR