Bonsoir,
Je me retrouve confronté à un petit problème, pour un simple projet personnel j'aimerais afficher quelque iframe sur une page et à l'aide d'un bouton next et previous changer les url de ces iframes et de les reloader. Et je m'arrache les cheveux, je me rend compte qu'il y a mille façon d'appeler une iframe et que lors de la première fois cela veut bien charger mais la seconde, que neni ca me dit plus rien et ca me sort des erreurs aberrante !
Code javascript : 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 var user = 1; var nbrOpen = 8; var url = 'http://www.monurl.com/?id='; function newtWindows(next) { if (next) { user += nbrOpen; } else { if ((user-nbrOpen) > 0) { user -= nbrOpen; } } if ((user-nbrOpen) > 0) { for(i = 1; i <= nbrOpen; ++i) { // trois manière de changer l'adresse de l'iframe //document.getElementById('frm'+i).contentDocument.location.href = url+(user+i)+'/'; //window.frames['frm'+i].location.href = url+(user+i)+'/'; //document.getElementById('frm'+i).src = url+(user+i)+'/'; // trois manière de reloader l'iframe (aucune n'a marcher pour l'instant) //document.getElementById('frm'+i).location.reload(); //window.frames['frm'+i].location.reload(); // window.frm1.location.reload(); } document.getElementById('status').innerHTML = (user-nbrOpen)+"/"+user; } }
Code html : 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 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <style type="text/css"> #frm1 { position: absolute; top: 30px; left: 0px; width: 400px; height: 400px;} #frm2 { position: absolute; top: 30px; left: 400px; width: 400px; height: 400px;} #frm3 { position: absolute; top: 30px; left: 800px; width: 400px; height: 400px;} #frm4 { position: absolute; top: 30px; left: 1200px; width: 400px; height: 400px;} #frm5 { position: absolute; top: 430px; left: 0px; width: 400px; height: 400px;} #frm6 { position: absolute; top: 430px; left: 400px; width: 400px; height: 400px;} #frm7 { position: absolute; top: 430px; left: 800px; width: 400px; height: 400px;} #frm8 { position: absolute; top: 430px; left: 1200px; width: 400px; height: 400px;} </style> <script type="text/javascript"> // code ci dessus </script> </head> <body> <input id="previous" type="button" value="previous" onclick="newtWindows(0);" /> <input id="next" type="button" value="next" onclick="newtWindows(1);" /> <span id="status"></span> <iframe id="frm1" name="frm1"></iframe> <iframe id="frm2" name="frm2"></iframe> <iframe id="frm3" name="frm3"></iframe> <iframe id="frm4" name="frm4"></iframe> <iframe id="frm5" name="frm5"></iframe> <iframe id="frm6" name="frm6"></iframe> <iframe id="frm7" name="frm7"></iframe> <iframe id="frm8" name="frm8"></iframe> </body> </html>
Lors de la première fois que j'appuye sur le bouton next, j'obtiens une erreur par iframe :
Erreur : Permission refusée à <http://www.monurl.com> d'appeler la méthode Location.toString pour <file://>.
et lors de l'appui une seconde fois dessus, plus rien ne se passe. et si je met le reload en plus j'ai d'autre erreurs.
Merci d'avance !
Partager