Super Javascript maisqui ne fonctionne pas !

Bonjour,

Le but du script est de:

A partir d'un formulaire faire une saisie de texte qui va s'afficher (defilant)sur une autre page.

J'ai trouvé mon bonheur (enfin presque..) sur le site biblioscript (merci à eux !!), mais cela ne marche pas mais je ne vois pas la coquille.

Le fichier HTML:(form_defil_texte2)

<html>
<head>
<meta name="author" value="Biblioscript.com">
<title>Message défilant dans un champ texte</title>

<script src="form_defil_texte2.js"></script>

</head>

<body>

<form name="formulaire">
Votre message : <input type="text" name="message" size="25" value=""><br>
<input type="button" value="Faire defiler" OnClick="defileur();"><br>

<br>
<input type="text" name="defilement" size="25">
</form>

</body>
</html>

Le fichier Javascript (form_defil_texte2.js)

// retardateur = servira a enchainer les defilements
var retardateur;

// encours = donne l'etat du defilement
var encours = false;

// delaiattente = delai d'attente entre 2 passages du texte
var delaiattente = 100;

// marge = emplacement ou demarre le texte
var marge = 20;

// cette fonction permet de faire demarrer le texte
function defileur() {

// emplacement = la ou le message defilera
var emplacement = document.formulaire.defilement.value;

var i = 0;
for (i = 0 ; i < marge ; i++) message = " " + message;
encours = true;
retardateur = window.setTimeout("defilement(0)",delaiattente);
}

// cette fonction est le defilement a proprement parler
function defilement(position) {

// message = devinez... (un peu d'espace avant pour avoir le temps de lire le debut du message)
var message = " " + document.formulaire.message.value;
encours = false;
if (position < message.length) document.formulaire.defilement.value = message.substring(position, message.length);
else position = -1;
++position;

encours = true;
retardateur = window.setTimeout("defilement("+position+")&q­uot;,delaiattente);
}

Merci d'avance de votre aide
Configuration: Windows XP
Firefox 3.0

1 réponse

  1. Salut. J'ai cherché pendant un petit moment, mais j'avoue que je planche un peu. Enfin au moins j'ai presque un résultat (oui je sais, PRESQUE :D). Essaye avec ca :

    <html> 
    <head> 
    <meta name="author" value="Biblioscript.com"> 
    <title>Message défilant dans un champ texte</title> 
    
    <script language="Javascript">
    	
    	var retardateur; 
    	var encours = false; 
    	var delaiattente = 100; 
    	var marge = 20; 
    	var message = document.getElementById('txtMessage').value; 
    	
    	function defileur() { 
    		var emplacement = document.getElementById('txtDefilement').value; 
    		for (i = 0 ; i < marge ; i++)
    			message = ' ' + message; 
    		encours = true; 
    		retardateur = window.setTimeout('defilement(0)',delaiattente); 
    	} 
    
    	function defilement(position) { 
    
    	encours = false; 
    	if (position < message.length)
    		document.getElementById('txtDefilement').value = message.substring(position, message.length); 
    	else
    		position = -1; 
    	position++; 
    
    	encours = true; 
    	retardateur = window.setTimeout('defilement(' + position + ')\',delaiattente'); 
    	} 
    </script> 
    
    </head> 
    
    <body> 
    
    <form name="formulaire"> 
    Votre message : <input type="text" name="message" id="txtMessage" size="25" value=""><br> 
    <input type="button" value="Faire defiler" OnClick="defileur();"><br> <br> 
    <input type="text" name="defilement" id="txtDefilement" size="35"> 
    </form> 
    
    </body> 
    </html>