Probleme objet attendu ligne 1

informaticseb Messages postés 2 Date d'inscription lundi 3 janvier 2005 Statut Membre Dernière intervention 4 janvier 2005 - 3 janv. 2005 à 17:03
informaticseb Messages postés 2 Date d'inscription lundi 3 janvier 2005 Statut Membre Dernière intervention 4 janvier 2005 - 4 janv. 2005 à 11:24
Bonjour,

voici le code :

<html>
<head>
<title>Test</title>
</head>

<script language="JavaScript">
<!--
var banniere="";
var ban=1;


function cycle() {
loadbanniere();
document.write(banniere);
if (++ban > 3) ban=1;

//--> Temps d'affichage de chaque bannière
window.setTimeout('cycle();',2000);
}


function loadbanniere() {
if (ban==1)
{
banniere="script de la 1re banniere";
}
if (ban==2)
{
banniere="script de la 2e banniere";
}
if (ban==3)
{
banniere="script de la 3e banniere";
}
return banniere
}
//-->
</script>

</html>

La 1re banniere s'affiche bien.
Et quand le temps du setTimeout est terminé, le script n'affiche pas la banniere suivante et affiche une erreur objet attendu a la ligne 1.

Merci d'avance de votre aide.

informatic seb

3 réponses

cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
4 janv. 2005 à 09:44
bonjour,
si la page a été totalement affichée,
ce qui est le cas quand on appelle la
fonction cycle(), un document.write(???)
efface totalement la page, y compris les
javascript [ pour s'en convaincre faire
afficher la source lors de l'erreur ]



<SUP>
<HR>
Cordialement . Bul</SUP>
0
cs_roro06 Messages postés 732 Date d'inscription jeudi 2 janvier 2003 Statut Membre Dernière intervention 29 octobre 2007
4 janv. 2005 à 10:04
Bonjour
Remplaces :
document.write(banniere);

par :
document.getElementsByTagName("body")[0].innerHTML=banniere;

Cordialement
Roro webDev
0
informaticseb Messages postés 2 Date d'inscription lundi 3 janvier 2005 Statut Membre Dernière intervention 4 janvier 2005
4 janv. 2005 à 11:24
Roro, merci de ton aide.
Ca marche nikel maintenant.

informatic seb
0
Rejoignez-nous