Affichage cyclique de plusieurs pages web dynamiques [Résolu]

kate1910 39 Messages postés lundi 24 août 2009Date d'inscription 26 septembre 2009 Dernière intervention - 1 sept. 2009 à 12:15 - Dernière réponse : kate1910 39 Messages postés lundi 24 août 2009Date d'inscription 26 septembre 2009 Dernière intervention
- 2 sept. 2009 à 15:42
bonjour
pendant ma periode de stage, je doit effectuer une application, il s'agit d'un affichage cyclique des pages web dynamiques existantes et indépandantes (chargement de la page toutes les X secondes
sachant que mes pages doivent s'afficher d'une maniére periodique .
j'ai beaucoup essayer de résolu ce problem mé sans aucun résultat
voici le code :
var pages = new Array("nani.html","kati.html","loli.html","rita.html");

var sui=0;
// function de rechargement
window.onload=function()

{

var nom=unescape(self.location.pathname).split('/'); // chemin/.../chemin/.../page_actuelle
nb1=pages.length;
pag=nom[nom.length-1];//page acutelle
while(sui<nb1)

{for(i=0;i<nb1;i++)
{
if(pages[i]==pag);
sui =i+1;
}}
else {sui =0;}

}

// --- lancement de la fonction de rechargement dans TIME millisecondes exactement

setTimeout ( function() // on chargera s

{ location.replace(pag,pages[sui]); }, 1000 ); // dans 1 seconde



svp si vous avez une idée coment je peux le faire pour que mon scripte fonctionne car je suis vraiment perdue et je suis tres en retard
merci d'avance.
Afficher la suite 

18 réponses

Répondre au sujet
Bul3 4934 Messages postés samedi 1 juillet 2006Date d'inscription 2 février 2015 Dernière intervention - 1 sept. 2009 à 16:02
+3
Utile
difficile d'aider justement !
>>j'ai essayé le code ca donne rien
ça n'existe pas !
il y a au moins des messages d'erreurs !
et chez moi, navré, mais ça baigne
les pages html :
nani ou autre pour voir où on est !!! pour les essais !!!
<script type="text/javascript" src="der.js"></script>

le .js
window.onload=function()
{ var nom=unescape(self.location.pathname).split('/');
var pag=nom[nom.length-1];
var pages=new Array( "nani.html", "kati.html", "loli.html", "rita.html" );
var nb1=pages.length;
var sui=0;
for ( i=0; i<nb1; i++ )
{ if ( pages[i]==pag )
{ sui=i+1;
if ( sui >= nb1 )
{ sui=0; }
break;
}
}
setTimeout ( function()
{ location.replace( pages[sui] ); }
,1000 );

}



et perso, sur le coup, je préfère les iframe :o)))
car on ne touche pas aux pages html existantes
et 1 seule fois le script ( plus simple d'ailleurs )

test.htm :


<script type="text/javascript">
var pages=new Array("nani.html","kati.html","loli.html","rita.html");
var index=1;
setInterval( function() { index++;
document.getElementById("aff").src=pages[index%pages.length]; }, 1000 );
</script>

Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de Bul3
Bul3 4934 Messages postés samedi 1 juillet 2006Date d'inscription 2 février 2015 Dernière intervention - 1 sept. 2009 à 12:34
0
Utile
on en a déjà causé kate,
si vous voulez que les pages s'enchaînent
en gérant cela en javascript, il faut mettre
le script sur chaque page
et déterminer soit sur quelle page on est soit
la page suivante à afficher

le plus simple c'est de donner un nom de page
qu'on incrémente ( comme dans l'exemple que
je vous ai fourni ici )

si vous tenez à tout prix à faire autrement :

_ déterminez dans quelle page vous êtes
( vous avez le code dans mon exemple )
_ recherchez la dans votre array pour
déterminer la page suivante
_ chargez cette nouvelle page après avoir
attendu le temps voulu
Commenter la réponse de Bul3
Bul3 4934 Messages postés samedi 1 juillet 2006Date d'inscription 2 février 2015 Dernière intervention - 1 sept. 2009 à 12:54
0
Utile
peut-être serait-il plus simple d'utiliser
un iframe pour afficher ses pages (?)
Commenter la réponse de Bul3
kate1910 39 Messages postés lundi 24 août 2009Date d'inscription 26 septembre 2009 Dernière intervention - 1 sept. 2009 à 13:09
0
Utile
Re
>>essayez, testez, "décortiquez" chaque ligne
c'est assez simple : 4 lignes en javascript !
et rien d'autre.
>>ne sont pas nommées de cette façon
soit vous les renommez pour que ça baigne
soit vous modifiez le script pour ça colle

ben c'est ca ce que j'ai essayer de le faire ,j'ai bien compris ton scripte et j'ai decidé de le modifier mé comme j t'ai déja dit sans aucun resultat
utiliser iframe ?? c'est koi ca ?
Commenter la réponse de kate1910
Bul3 4934 Messages postés samedi 1 juillet 2006Date d'inscription 2 février 2015 Dernière intervention - 1 sept. 2009 à 13:40
0
Utile
kate, kate... ne comptez sur personne
pour faire à votre place !
primo, ça ne vous apporterait rien !
( remarquez qu'à moi non plus !
faire le script à votre place n'apporte rien à personne ,
vous aider à le faire, ça, ça peut, au moins à vous )

>>j'ai bien compris ton scripte
c'est bien.

>>et j'ai decidé de le modifier
pourquoi ne pas l'adapter à ce qu'on veut bien entendu

>>comme j t'ai déja dit sans aucun resultat
c'est normal... tel que vous faites,
ça ne peut pas fonctionner !

relisez ce que je vous dis ici, je me cite :
[i]_ déterminez dans quelle page vous êtes
( vous avez le code dans mon exemple )
_ recherchez la dans votre array pour
déterminer la page suivante
_ chargez cette nouvelle page après avoir
attendu le temps voulu
/i
Commenter la réponse de Bul3
Bul3 4934 Messages postés samedi 1 juillet 2006Date d'inscription 2 février 2015 Dernière intervention - 1 sept. 2009 à 13:53
0
Utile
quand aux iframe, mon foie, vous
n'avez pas de documentation ?
sur selfHTML par exemple
Commenter la réponse de Bul3
kate1910 39 Messages postés lundi 24 août 2009Date d'inscription 26 septembre 2009 Dernière intervention - 1 sept. 2009 à 14:07
0
Utile
Re
oki bul merci bien comme meme
mais ce que vous me demendez de le relire c'est ce que j'ai essayer de l'appliquer dans le code que j'ai met ci-dessus ,c'est qlq chose de nouveau pr moi
merci en tout cas
Commenter la réponse de kate1910
Bul3 4934 Messages postés samedi 1 juillet 2006Date d'inscription 2 février 2015 Dernière intervention - 1 sept. 2009 à 14:21
0
Utile
>>j'ai essayer de l'appliquer dans le code
>>que j'ai met ci-dessus
certes, certes... mais debugger !!
avec déjà, FF, pas exemple :

Erreur : syntax error
Fichier Source : file:...htm
Ligne : 16, Colonne : 1
Code Source :
else { sui =0; }

et si on décale ( indente ) pour voir :
...
while(sui<nb1)
{ for(i=0;i<nb1;i++)
{ if(pages[i]==pag);
sui =i+1;
}
}
else { sui =0; }

le else se rapporte à quoi ?


vous n'êtes pas "si loin au fond"
mais j'ai déjà mis aussi non ? :
Commenter la réponse de Bul3
Bul3 4934 Messages postés samedi 1 juillet 2006Date d'inscription 2 février 2015 Dernière intervention - 1 sept. 2009 à 14:33
0
Utile
et, regardez aussi votre location.replace(pag,pages[sui]);
la syntaxe n'est pas correcte : ça n'admet qu'un seul
paramètre, en plus, à ce niveau, "pag" est indéfini.
Commenter la réponse de Bul3
Bul3 4934 Messages postés samedi 1 juillet 2006Date d'inscription 2 février 2015 Dernière intervention - 1 sept. 2009 à 14:47
0
Utile
allons....
essayez donc comme çà :
<script type="text/javascript">
window.onload=function()
{ var nom=unescape(self.location.pathname).split('/');
var pag=nom[nom.length-1];
var pages=new Array( "nani.html", "kati.html", "loli.html", "rita.html" );
var nb1=pages.length;
var sui=0;
for ( i=0; i<nb1; i++ )
{ if ( pages[i]==pag )
{ sui=i+1;
if ( sui > nb1 )
{ sui=0; }
break;
}
}
setTimeout ( function()
{ location.replace( pages[sui] ); }
,1000 );
}
</script>


le script doit être dans toutes les pages !
Commenter la réponse de Bul3
Bul3 4934 Messages postés samedi 1 juillet 2006Date d'inscription 2 février 2015 Dernière intervention - 1 sept. 2009 à 15:13
0
Utile
et d'ailleurs :
...
for ( var i=0; i<nb1; i++ )
...
if ( sui >= nb1 )
...
enfin.... je pense, pas testé
Commenter la réponse de Bul3
kate1910 39 Messages postés lundi 24 août 2009Date d'inscription 26 septembre 2009 Dernière intervention - 1 sept. 2009 à 15:20
0
Utile
Re
vous essayez tjrs de m'aider
merci bien
mais comme tjrs aucune interactivité
j'ai essayé le code ca donne rien
meme si il apparait trés logique
et bien sur j'ai met le scripte dans tous lrs pages
Commenter la réponse de kate1910
kate1910 39 Messages postés lundi 24 août 2009Date d'inscription 26 septembre 2009 Dernière intervention - 1 sept. 2009 à 16:25
0
Utile
enfin !
oui moi aussi je préfere ne pas toucher les pages html .votre solution est la meillieur .
problém résolu
merci bien
Commenter la réponse de kate1910
Bul3 4934 Messages postés samedi 1 juillet 2006Date d'inscription 2 février 2015 Dernière intervention - 1 sept. 2009 à 16:38
0
Utile
>>solution est la meilleure
très loin d'être sûr !
le script est plus simple,
il n'existe qu'une seul fois,
on ne touche pas aux pages...
d'aucuns verront cela d'un mauvais œil !

je vous avais dit de
regarder les iframe ;o)

ça aurait été bien de comprendre pourquoi
l'autre solution ne fonctionnait pas, enfin
chez vous, mais bon...
Commenter la réponse de Bul3
Bul3 4934 Messages postés samedi 1 juillet 2006Date d'inscription 2 février 2015 Dernière intervention - 1 sept. 2009 à 16:46
0
Utile
et vous pourriez faire ça avec
uniquement des balises <meta> ;o)
Commenter la réponse de Bul3
Bul3 4934 Messages postés samedi 1 juillet 2006Date d'inscription 2 février 2015 Dernière intervention - 1 sept. 2009 à 16:49
0
Utile
nani.html:
...
<meta http-equiv="Refresh"
content="1; URL="kati.html">

kati.html:
...
<meta http-equiv="Refresh"
content="1; URL="loli.html">

...etc...
Commenter la réponse de Bul3
Bul3 4934 Messages postés samedi 1 juillet 2006Date d'inscription 2 février 2015 Dernière intervention - 1 sept. 2009 à 17:53
0
Utile
" en trop...
<meta http-equiv="Refresh"
content="1; URL=loli.html">
Commenter la réponse de Bul3
kate1910 39 Messages postés lundi 24 août 2009Date d'inscription 26 septembre 2009 Dernière intervention - 2 sept. 2009 à 15:42
0
Utile
bonjour Bul3

merci bien pour les trois methodes
je tiens juste à vous informer que j'ai bien aimé la methode de iFrame sauf que pendant l'affichage c'est le contenu de l'iframe qui change et pas la page qui contient l'iframe.
dans les pages s'affichent ds le cadre de l'iframe . pour les autres methodes y a pas de probléme tous marche bien .
je doit choisir une pour que je puisse continuer sur mon application

merci
Commenter la réponse de kate1910

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.