Super Javascript maisqui ne fonctionne pas !

Fermé
GOFEUR Messages postés 2 Date d'inscription mercredi 16 juillet 2008 Statut Membre Dernière intervention 16 juillet 2008 - 16 juil. 2008 à 22:03
Absinthe06 Messages postés 102 Date d'inscription vendredi 11 juillet 2008 Statut Membre Dernière intervention 7 juillet 2010 - 17 juil. 2008 à 00:09
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 vendredi 11 juillet 2008 Statut Membre Dernière intervention 7 juillet 2010 11
17 juil. 2008 à 00:09
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