Bonjour à tous,
je ne comprend rien au javascript et le peu que j'utilise, je l'ai glané sur divers forum.
J'ai une fonction pop-up qui fonctionnait très bien jusqu'à ce que j'envisage d'introduire des petites vidéos sur mon site. Malheureusement le clic sur le bouton de lancement de la vidéo se confond avec le clic de fermeture de la fenêtre.
Pour éviter le problème, j'ai envisagé de créer un bouton extérieur à la fenêtre pop pour la fermer en cliquant dessus, MAIS !!!!!
malgré les nombreuses lectures du code utilisé, je n'arrive pas à comprendre ce que je dois modifier dans le code javascript ci dessous pour que le clic de fermeture ne fonctionne que quand on clique sur le bouton extérieur à la fenêtre ouverte ?.
le bouton crée est "ferm-fenetre.gif"
le code javascript gérant les fonctions
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45 function unpopall() { var myAs = document.getElementsByTagName('a'); for (var a = 0; a < myAs.length; ++a) { // Si le lien a une classe de type pop if (myAs[a].className == 'pop') { // on extrait l'id de la popup à partir du href var pop = document.getElementById(myAs[a].href.substring(myAs[a].href.lastIndexOf('#') + 1)); // si la popup existe on l'affiche (display block) if (pop) { pop.style.display = 'none'; } } } } function pop() { var myAs = document.getElementsByTagName('a'); for (var a = 0; a < myAs.length; ++a) { // Si le lien a une classe de type pop if (myAs[a].className == 'pop') { // on extrait l'id de la popup à partir du href var pop = document.getElementById(myAs[a].href.substring(myAs[a].href.lastIndexOf('#') + 1)); // si la popup existe on l'affiche (display block) if (pop) { pop.style.display = 'none'; myAs[a].onclick = function() { thisPopup = document.getElementById(this.href.substring(this.href.lastIndexOf('#') + 1)) unpopall(); thisPopup.style.display = (thisPopup.style.display == 'none') ? 'block' : 'none'; return false; }; // on efface la popup en cliquant sur le bouton ou la fenêtre pop.onclick = function() { this.style.display = 'none'; }; } } } }
le problème est visible sur la page
http://www.cisalpin.com/pages/trains/choix_trains.html
rubrique vidéo
un spécialiste du javascript peut-il m'indiquer comment modifier le code pour que la fonction fermeture de la fenêtre ne fonctionne que par clic sur le bouton "ferm-fenetre.gif".
Merci d'avance d'avance de vos conseils
Partager