Exécuter script externe existant toutes les x secondes

Delnet Messages postés 9 Date d'inscription samedi 14 août 2004 Statut Membre Dernière intervention 6 décembre 2009 - 6 déc. 2009 à 10:07
Delnet Messages postés 9 Date d'inscription samedi 14 août 2004 Statut Membre Dernière intervention 6 décembre 2009 - 6 déc. 2009 à 14:54
Bonjour,

Voici la partie de code que j'utilise actuellement:

...
...
..

<SCRIPT language=\"Javascript\"><!--
Nom = navigator.appName;
if (Nom == 'Microsoft Internet Explorer') {document.write (\"<script src=\\"random.js\\"></script>\")  }
else {document.write (\"<script src=\\"random\\"></script>\") }
// --></SCRIPT>
</td>




En fait il s'agit d'un petit script qui fonctionne très bien et qui affiche aléatoirement une image parmi une liste d'une vingtaine d'images à chaque chargement de la page.

J'aimerais pouvoir faire que ce script soit rééxecuté toutes les x secondes.
(Sans devoir rafraichir la page, ca je sais le faire mais je trouve que c'est nul)
Je sais qu'il existe des scripts qui le font mais moi je désire garder mon script actuel et l'adapter à cette fonction supplémentaire.

J'a vraiment besoin du code prêt à l'emploi, pas de commentaires fais-ci ou fais-ca.
Ah oui, aussi, faudrait que ca tourne sur n'importe quel navigateur

Je crois qu'il faut utiliser interval mais j'arrive pas à le faire fonctionner, donc j'arrête de chercher.

Merci d'avance.


PS: Pour ceux qui se posent la question quant à la fonction qui permet de détecter le navigateur que vous voyez dans le script actuel, c'est parce que sans ça le script ne fonctionne pas sous Firefox.


Delnet

14 réponses

Bul3 Messages postés 4933 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 2 février 2015 16
6 déc. 2009 à 11:07
Bonjour,
1° vous avez un .js différent en fonction du navigateur ?
( qui plus est mis avec un document.write ??? )
qu'est-ce qui peut justifier cela ?
2° mettez votre séquence qui affiche une image
aléatoire dans une fonction et appelez cette
fonction avec setInterval
Cordialement
0
Bul3 Messages postés 4933 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 2 février 2015 16
6 déc. 2009 à 11:24
ah.. je viens de voir
>>parce que sans ça le script ne fonctionne pas sous Firefox.
et il fonctionne dans l'autre ?
testez donc le navigateur dans votre fonction
et faites les traitements pour l'un ou l'autre
plutôt qu'un .js (surtout avec document.write !!!) différent
0
Delnet Messages postés 9 Date d'inscription samedi 14 août 2004 Statut Membre Dernière intervention 6 décembre 2009
6 déc. 2009 à 12:10
Merci, mais je sais que je dois le mettre dans une fonction et c'est bien ca que j'arrive pas à faire, d'où ma demande des lignes de codes et non d'un fais-ci ou fais-ca...


Delnet
0
Bul3 Messages postés 4933 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 2 février 2015 16
6 déc. 2009 à 12:20
non ? mais ! vous avez fini d'être désagréable ?
je tente de vous aider moi !
nul ici ne fera tout à votre place
surtout que les lignes de code,
c'est vous qui les avez !!!!!!

petite aide encore ( je suis trop
gentil ) et il va falloir vous prendre
par la main et travailler un peu

pour l'instant vous avez :
instruction 1
instruction 2
instruction 3....

vous faites :
function toto()
{ instruction 1
instruction 2
instruction 3....
}
et vous appelez cette fonction avec
un setInterval

quand à setInterval, vous savez lire ?
oui : cliquez donc ici
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 30
6 déc. 2009 à 13:01
Et toi Bul, sais tu lire ?
Le Monsieur te demande "des lignes de codes", "et non un fais-ci ou fais-ca"
Tu es payé grassement pour apporter ton aide ici, alors tu DOIS lui faire son code.

Tu as déjà fais une remarque désobligeante (je cite : "on ne fournit pas de codes tout faits") lors du tout premier thread de Delnet (celui ci étant déjà le second).

La prochaine fois c'est la porte.

@delnet : j'espère que tu comprendras l'objet de ce message


Cordialement,

Kohntark -
0
Bul3 Messages postés 4933 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 2 février 2015 16
6 déc. 2009 à 13:08
<humour>
tu m'en veux parce que je répondis plus
vite sur un autre message kohntark ?
c'est le week-end, tu fais encore la foire,
c'est uniquement pour ça ;o)
</humour>
mais t'as raison... je m'attèle à la tâche
( ou la tache ?? ) et je le lui fais son code.
ça fait du bien un peu de soutien.
0
Delnet Messages postés 9 Date d'inscription samedi 14 août 2004 Statut Membre Dernière intervention 6 décembre 2009
6 déc. 2009 à 13:21
Bon, merci quand-même mais quand on n'y arrive pas, on n'y arrive pas...
J'ai (ré)essayé d'adapter vos exemples mais cela ne fonctionne pas, donc ça restera comme ça.

(et désolé d'avoir semblé désagréable, ce n'était pas le but.)
Encore merci.


Delnet
0
Bul3 Messages postés 4933 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 2 février 2015 16
6 déc. 2009 à 13:29
>>J'ai (ré)essayé d'adapter vos exemples
euh ??? nul n'a fourni d'exemples ici ?
ou j'ai pas tout lu ?
>>mais cela ne fonctionne pas,
on ne dit pas "ça marche pas", mais "je ne parviens
pas à utiliser les outils mis à ma disposition"
car à part le .js qui ne servira à rien, on
ne voit pas ce que vous avez essayé.
0
Delnet Messages postés 9 Date d'inscription samedi 14 août 2004 Statut Membre Dernière intervention 6 décembre 2009
6 déc. 2009 à 13:30
@ Kohntark

Message reçu.
Mais encore une fois, j'ai cru que quelqu'un pouvait m'aider à mettre en forme quelque chose qui vous semble si simple alors que moi, j'ai beau essayer et réessayer en me basant sur des tas d'exemples, j'y arrive pas.
Et comme j'avais pas l'impression de demander 7000 pages de codes mais juste comment appeler simplement cette fonction en 3 ou 4 lignes.

Et par rapport à ma phrase "et non un fais-ci ou fais-ca", c'était parce que j'ai justement déjà fait pleins d'essais sans succès.

Allez, et encore un grand merci...
Amitiés

Delnet
0
Bul3 Messages postés 4933 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 2 février 2015 16
6 déc. 2009 à 13:32
me suis gouré de réponse...
si, si , j'ai mis un exemple,
si ça ne fonctionne pas, mon foie,
c'est parce que vous n'utilisez pas comme il faut
mais comme j'ai cassé ma boule de cristal hier,
navré, je ne parviens plus à deviner quoi que ce
soit, y compris ce que vous essayez.
0
Bul3 Messages postés 4933 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 2 février 2015 16
6 déc. 2009 à 13:35
>>juste comment appeler simplement cette fonction
>>en 3 ou 4 lignes.
vous n'avez pas été lire la doc ?
et 1 seule ligne suffit !
setInterval( fonction_a_faire, délai_en_millisecondes );
0
Delnet Messages postés 9 Date d'inscription samedi 14 août 2004 Statut Membre Dernière intervention 6 décembre 2009
6 déc. 2009 à 13:49
Bon,
J'ai vraiment que cette question est en train de partir en sucettes.
Donc, oui, j'ai lu les exemples, oui j'ai compris ce que vous dites, non cela ne tourne pas.

Alors il est clair que le gros nul que je suis n'est pas capable de faire fonctionner ce bidule mais cest pas une raison pour m'en foutre plein la g.....


Voici ce que j'ai fait:

<script type="text/javascript">
<!--
var actif = window.setInterval("rnd_images()",1000);
var i = 0
function rnd_images() {
Nom = navigator.appName; 
if (Nom == 'Microsoft Internet Explorer') {document.write ("<script src="rand_2.js"></script>")  } 
else {document.write ("<script src="rand_2.js"></script>") }
  i = i + 1;
  if(i >= 10)
   window.clearInterval(actif);
}
//-->
</script>


...

<td bgcolor="#0D0D0D" width="200" height="200" style="text-align: center; vertical-align: middle">
<script language="JavaScript" type="text/JavaScript"> 
<!-- 
rnd_images(); 
//--> 
</script> 
</td>



Bref, si quelqu'un était assez gentil de me dire où je me plante, un grand merci, autrement merci quand-même mais arrêtez de me traiter comme si j'avais insulté quelqu'un car je ne crois pas avoir été désagréable dans mes propos envers qui que ce soit.

Amitiés.


Delnet
0
Bul3 Messages postés 4933 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 2 février 2015 16
6 déc. 2009 à 14:33
nul ne se moque de personne ici. jamais.
enfin, rarement, uniquement lorsque c'est mérité !
et pas sur la connaissance de tel ou tel langage
mais sur le comportement
le votre m'a heurté ( je ne fus pas le seul ! )

votre exemple a évolué... non ?
"petit" indice ? un document.write, lorsque
la page a totalement été interprétée, c'est
le cas avec un setTimeout ou setInterval,
commence par effacer toute la page, y compris
le javascript.
votre fonction n'existe plus.
contrôler donc la page après le setInterval,
vous le verrez
d'ailleurs, inclure un .js, il n'est pas
nécessaire de la faire toutes les secondes... si ?
0
Delnet Messages postés 9 Date d'inscription samedi 14 août 2004 Statut Membre Dernière intervention 6 décembre 2009
6 déc. 2009 à 14:54
Si je vous ai heurté, désolé, encore une fois c'était involontaire.
Et si c'était à cause du "...non d'un fais-ci ou fais-ca" c'était uniquement pour faire comprendre que ce que je devais faire je l'avais à peu près compris dans des exemples que j'ai vu mais que je n'y arrivait vraiment pas, et non dans un autre but.

Voilà, merci encore et désolé de vous avoir fait perdre votre temps avec cette longue discussion.

A présent, je préfère en rester là (et en bons termes)
Bonne journée.

Delnet
0
Rejoignez-nous