Problème boucle for + popup
Résolu
$0M3oNe
Messages postés
336
Date d'inscription
Statut
Membre
Dernière intervention
-
$0M3oNe Messages postés 336 Date d'inscription Statut Membre Dernière intervention -
$0M3oNe Messages postés 336 Date d'inscription Statut Membre Dernière intervention -
bonjour, je me trouve en ce moment devant un problème en javascript que je ne comprend absolument pas:
je voudrais que lorsqu'on clique sur un bouton, une popup s'ouvre puis se ferme 5 secondes plus tard, et cela 3 fois de suite. voici ce que j'ai écrit:
mais je au lieu de ça, il m'ouvre les 3 popup de suite, puis me ferme la troisième après 5 sec; un peu comme si il n'exécutait la 2eme instruction qu'après avoir exécuté 3 fois la première (si vous voyez ce que je veux dire). et si j'enlève la boucle for ou si je fixe la condition à
j'ai cherché pendant 2 heures sur le web sans rien trouver T_T alors je voudrais au moins avoir vos avis sur la question...
merci d'avance de vos réponses!
je voudrais que lorsqu'on clique sur un bouton, une popup s'ouvre puis se ferme 5 secondes plus tard, et cela 3 fois de suite. voici ce que j'ai écrit:
function popup() { for (vble = 0; vble < 3; vble++) { test = window.open("http://www.google.fr"); window.setTimeout("test.close()",5000); } }
mais je au lieu de ça, il m'ouvre les 3 popup de suite, puis me ferme la troisième après 5 sec; un peu comme si il n'exécutait la 2eme instruction qu'après avoir exécuté 3 fois la première (si vous voyez ce que je veux dire). et si j'enlève la boucle for ou si je fixe la condition à
vble < 1tout fonctionne parfaitement.
j'ai cherché pendant 2 heures sur le web sans rien trouver T_T alors je voudrais au moins avoir vos avis sur la question...
merci d'avance de vos réponses!
A voir également:
- Problème boucle for + popup
- Downloader for pc - Télécharger - Téléchargement & Transfert
- Fake mcafee popup - Accueil - Piratage
- Idm for mac - Télécharger - Téléchargement & Transfert
- Copytrans heic for windows - Télécharger - Visionnage & Diaporama
- Instagram for pc - Télécharger - Divers Communication
5 réponses
Voilà, pas besoin d'array en fait :
___/\_canarder_/\___
~Waterfox|Palemoon~
http://jsfiddle.net/qn2vpbor/1/
var a;
var i = 0;
function ouvrir() {
if(i<3) {
a = window.open('http://example.com');
window.setTimeout(fermer,5000);
i++;
}
}
function fermer() {
a.close();
window.setTimeout(ouvrir,1000);
}
ouvrir();
___/\_canarder_/\___
~Waterfox|Palemoon~
bonjour canarder,
merci pour ta réponse (même si elle ne répond pas vraiment au problème), mais après avoir des recherches et beaucoup d'essais avec iframe, je me suis retrouvé devant le problème des X-frame-options. Tu as du certainement en entendre parler, c'est en gros une protection des sites pour qu'il ne soient pas affichés dans des frame justement (c'était à la base pour éviter les hacks), et le problème c'est que j'ai précisément besoin de les afficher. donc je suis bloqué, as-tu une solution?
merci pour ta réponse (même si elle ne répond pas vraiment au problème), mais après avoir des recherches et beaucoup d'essais avec iframe, je me suis retrouvé devant le problème des X-frame-options. Tu as du certainement en entendre parler, c'est en gros une protection des sites pour qu'il ne soient pas affichés dans des frame justement (c'était à la base pour éviter les hacks), et le problème c'est que j'ai précisément besoin de les afficher. donc je suis bloqué, as-tu une solution?
Ah ok je viens de comprendre le problème. Il te faut un nom de variable différent pour chaque fenêtre !
Peut-être que tu peux utiliser ça : https://www.w3schools.com/js/js_arrays.asp
Un setTimeout ne bloque pas l'exécution du script.
Peut-être que tu peux utiliser ça : https://www.w3schools.com/js/js_arrays.asp
Un setTimeout ne bloque pas l'exécution du script.
je ne cherche pas à agir sur les éléments du site, je cherche simplement à l'ouvrir dans une autre fenêtre/onglet/frame. en l'occurence même sans JS ce n'est plus possible de le faire dans des frames (à cause de la protection X-frame). par contre excuse moi mais je ne comprend pas très bien ce que tu entend par "un nom de variable différend pour chaque fenêtre", comment faire pour changer le nom d'une variable dans une boucle? (la valeur c'est logique, mais le nom...)
Ok merci ça marche parfaitement! d'ailleur le setTimeout dans la fonction fermer n'est pas nécessaire non plus. ça montre bien du coup que le problème venait de la boucle for; c'est frustrant de ne pas pouvoir l'utiliser, ça simplifierait grandement le code >_<
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question