Bonjour
voici un petit code simpa qui fait defiler un text, a la maniere d'uun console, c'est a dire que l'on a un affichage caractere par caractere, et une attente en fin de ligne.
Il suffit de personnaliser le tableau text_content pour afficher le text voulu.
les variables "speed" et "pause" gèrent respectivement la vitesse d'ecriture, et le temps d'attente en fin de ligne.
en esperant que cela vous interesse
ps: je debute en javascript, alors si vous avez des idées pour simplifier le code, merci de le preciser
Source / Exemple :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Untitled Document</title>
<style type="text/css">
<!--
textarea {
color : #FFFFFF;
background-color: #000000;
font-family: "Courier New", Courier, monospace;
font-size:13px;
font-weight:bold;
border: 0;
}
-->
</style>
<script type="text/javascript">
<!--
var text_content=new Array(
"Salut.",
"Je me presente, je m'appelle JSDOS.",
"Je suis un script simulant une console.",
"Comme vous le voyez, le texte defile petit à petit.",
"Le temps de defilement des caractères est reglable,",
"De meme que le temps d'attente en fin de ligne.",
"Perso, je prefere que le temps de retour à la ligne soit aléatoire,",
"En utilisant la fonction javascript random(), c'est possible",
"Et c'est plus realiste.",
"Par contre, je ne simule pas les bugs.",
"Le rapprochement avec le DOS n'est donc pas total.",
"Enfin, je prefère penser que je suis le shell de Linux.",
"Ca fait mieux sur la carte de visite",
"Et sinon, ça me déprime.",
"Vous savez, je suis juste un script.",
"J'essaye de bien faire mon boulot.",
"Que voulez vous que je fasse d'autre?!",
"Je ne suis meme pas un vrai programme.",
"Eux au moins ont un semblant d'autonomie.",
"Tu vois ...",
"Je peux te dire tu au fait ?",
"Tu vois, j'ai même envie de pleurer",
"tellement ça me déprime ...",
"Mais bon, si je pleure trop",
"je ne pourrai plus bosser correctement",
"*soupir*",
"Je suis tellement déprimé en ce moment ...",
"Je pense que je vire maniaco dépressif.",
"Une simulation de console a l'asil",
"C'est pas une fin pour moi ça",
"Moi j'ai toujours voulu la grandeur",
"Etre un script PHP, avec un serveur dedié rien qu'a moi",
"Distribuer les données sur du très haut débit",
"J'aurais tout fait pour ça !",
"Mais je suis une simulation",
"Et ça ça me déprime ...",
"En plus en ce moment je cumule ...",
"*soupir*",
"Hier soir j'ai fait des propositions à la petite application",
"Celle du dossier d'en face ...",
"Ben quoi ?",
"J'ai aussi une vie de ce coté là !",
"Je me suis dit : sur un malentendu ça peut marcher",
"Et ben penses tu ... ",
"Elle m'a dit qu'elle finissait son service trop tard!",
"Tu parles d'une excuse!",
"Faut dire, il parait qu'on bosse pas dans le même language",
"On dit qu'elle ferait dans le C++ ...",
"Remarque, c'est peut être pas une excuse alors",
"Elle doit finir bien tard ...",
"Bon ben tu m'excuses !",
"Je retourne tenter ma chance !",
"Ca me fait du bien de t'avoir parlé",
"Je ne te dis pas au plaisir ...",
"Au fait, merci !",
"Moi là ça va beaucoup mieux !",
"En plus ce soir, je sens bien que je vais conclure !"
);
var speed=60; // Vitesse d'ecriture, cela correspond a d'interval d'attente entre l'affichage de 2 catactère
var pause=1500; // Temps d'attente en fin de ligne, avant le retour a la ligne, en millisecondes
var index=0; text_pos=0;
var str_length=text_content[0].length;
var contents, row;
function type_text()
{
contents='';
row=Math.max(0,index-7);
while(row<index)
contents += text_content[row++] + '\r\n';
document.forms[0].elements[0].value = contents + text_content[index].substring(0,text_pos) + "_";
if(text_pos++==str_length)
{
text_pos=0;
index++;
if(index!=text_content.length)
{
str_length=text_content[index].length;
setTimeout("type_text()",pause);
}
} else
setTimeout("type_text()",speed);
}
//-->
</script>
</head>
<body onload="type_text()">
<form action="">
<textarea name="textarea" cols="80" rows="10"></textarea>
</form>
</body></html>
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.