Super Javascript maisqui ne fonctionne pas !

GOFEUR Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -  
Absinthe06 Messages postés 102 Date d'inscription   Statut Membre Dernière intervention   -
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
A voir également:

1 réponse

Absinthe06 Messages postés 102 Date d'inscription   Statut Membre Dernière intervention   11
 
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> 
1