La Communauté Webmaster  forum rss


  Forum-webmaster
  Technique - programmation
  HTML / CSS / XHTML
(Modérateurs: Shain, Netah, Lilian, lauryv, ToToMaStEr)
  Faire apparaitre un texte progressivement.
« Précédent Suivant »
Pages: [1] Descendre
Répondre    Aviser des réponses    Envoyer le sujet    Imprimer
  Auteur  Sujet: Faire apparaitre un texte progressivement.  (Lu 2211 fois)
Faire apparaitre un texte progressivement.
« sur: le 21-09-2004 a 00:55:24 »
Grand Mamamouchi
Membre récent
*

Hors-Ligne

Sexe: Male
Messages: 15



Hare Krishna...

Voir le Profil
Répondre avec citation

Salut a toi !

Je voudrais ecrire un script qui ferait apparaitre du texte
progressivement.

Voila le script :

<font color = green >green</font> // couleur du texte
<font color = salmon >salmon </font> // couleur du fond

<div id = conteneur_html>
jouai8u06f97cf876d86de67d8ne55ne68ndunty76u
</div>

<script>

conteneur_dhtml = document.getElementById('conteneur_html')

function bi_hexer(reel)
{
chaine = '0123456789abcdef'
cara_hexa = chaine.split('')
return cara_hexa[reel%16] + cara_hexa[parseInt(reel/16)]
}

duree_cumulee = 0

function faire_apparaitre(duree_totale)
{

while( duree_cumulee <= duree_totale )
{
ton = 255 * duree_cumulee/duree_totale

conteneur_dhtml.style.color = '#' + bi_hexer(ton) + 'ff' + bi_hexer(ton)

duree_cumulee += duree_totale/255
setTimeout('faire_apparaitre()', duree_totale/255)
}

}

faire_apparaitre(5000)

</script>

Ca ne fonctionne pas et je ne comprends pas pourquoi.

Peut-tu m'eclairer ?

Merci de prendre soin de me repondre.

En esperant que
ce message te trouvera en pleine
forme, je
te souhaite une excellente journee.

Dominique

mailto:d.braschi-blondeau@laposte.net

Bibi me fecit :

Loue a etudiant, au coeur de Paris (2e)...
Pour tout savoir sur cette opportunite, viens sur
http://d.braschi-blondeau.chez.tiscali.fr/Clery/

Tu veux connaitre l'esprit de la 'Maison
Brulee'...
viens nous voir sur notre nouveau site a
http://lamaisonbrulee.chez.tiscali.fr !

Rapporter au modérateur  

Re:Faire apparaitre un texte progressivement.
« Répondre #1 sur: le 22-09-2004 a 18:35:01 »
MarvinLeRouge
Superactif
****

Hors-Ligne

Messages: 584





Voir le Profil    WWW
Répondre avec citation

Ta gestion du temps est mauvaise : tu fais un setTimeout pour rappeler automatiquement ta fonction, tu n'as donc pas à y faire de boucle.
D'autre part, tu ne testes nulle part le temps réellement écoulé. Est-ce volontaire ?
Selon moi, tu devrais logiquement :

  • relever l'heure en millisecondes avant le premier appel de la fonction
  • relever l'heure en millisecondes à chaque appel de la fonction
  • tester la différence et te servir de cette valeur pour calculer le degré d'avancement du script, donc la couleur correcte

Rapporter au modérateur  

Développeur web / Création de site internet
jean@ceugniet.com
Jean Ceugniet, Développement web
SIRET : 523 611 044 00018
Re:Faire apparaitre un texte progressivement.
« Répondre #2 sur: le 23-09-2004 a 02:30:53 »
Grand Mamamouchi
Membre récent
*

Hors-Ligne

Sexe: Male
Messages: 15



Hare Krishna...

Voir le Profil
Répondre avec citation

Merci de ta contribution argumentee,  MarvinLeRouge !

Dominique

Rapporter au modérateur  
Faire apparaitre un texte progressivement.
« Répondre #3 sur: le 23-09-2004 a 04:03:12 »
Grand Mamamouchi
Membre récent
*

Hors-Ligne

Sexe: Male
Messages: 15



Hare Krishna...

Voir le Profil
Répondre avec citation

Bonjour a toi !

Je suis toujours sur mon objectif de faire apparaitre du texte progressivement.

J'ai retrouve le nom des couleurs de fond et de texte et -merveille- le nom de la fonction qui traduit les decimaux en hexadecimaux.

Pour l'instant, je ne travaille plus sur les questions de temps.

Voici ou j'en suis :

<div
id = texte
>
tbtuf6ny7idntyutbtuf6ny7idntyutbtuf6ny
</div>

<script language = 'Javascript'>

hd_fond = document.bgColor.replace('#', '0x')
hd_text = document.fgColor.replace('#', '0x')
courante = hd_fond

delai = 22

function faire_apparaitre()
{
if( courante < hd_text )
courante++
else if( courante > hd_text )
courante--
else
alert('Fini!')

hd_courante = courante.toString(16)

document.getElementById('texte').innerHTML = " <a style = ' color : #" + hd_courante + " ' > aaaaaaaaaaaaa </a> "

setTimeout(faire_apparaitre(), delai)
}

faire_apparaitre()

</script>

D'une part, l'alert ne sort jamais; d'autre part, le colorage s'arrete a un jaune alors que la couleur de texte de depart est le noir.

Merci pour le coup de main !

Dominique

Rapporter au modérateur  
Re:Faire apparaitre un texte progressivement.
« Répondre #4 sur: le 23-09-2004 a 09:44:29 »
MarvinLeRouge
Superactif
****

Hors-Ligne

Messages: 584





Voir le Profil    WWW
Répondre avec citation

Salut,

1) Je n'ai jamais fait d'addition avec ++ sur des hexas, donc je ne suis pas sûr que ça marche
2) Tu devrais t'arranger pour récupérer les couleurs générées au fur et à mesure pour vérifier qu'elles sont bien cohérentes : concatène les dans une chaîne durant le script et après affiche les avec un alert ou sur la page.
3) Quelles est la couleur de fond de ta page ? Quelle est la couleur de texte de ta page ? A Quelle couleur s'arrête ton script ? NB : Ces 3 questions nécessitent des réponses numériques précises.

Rapporter au modérateur  

Développeur web / Création de site internet
jean@ceugniet.com
Jean Ceugniet, Développement web
SIRET : 523 611 044 00018
Faire passer un texte d'une couleur a une autre...
« Répondre #5 sur: le 23-09-2004 a 10:27:26 »
Grand Mamamouchi
Membre récent
*

Hors-Ligne

Sexe: Male
Messages: 15



Hare Krishna...

Voir le Profil
Répondre avec citation

Salut MarvinLeRouge !

et merci de contribuer a ma recherche.

J'ai tente de verifier l'incrementation des hexadecimaux avec un alert : ca a l'air de se faire normalement.

La verification serait plus complete avec un input de form, mais je n'ai pas reussis a mettre cette verification-la en oeuvre (et je n'ai pas compris pourquoi je n'y arrivais pas; peut-etre a cause des guillemets, voir plus bas).

Le produit de l'incrementation ou de la decrementation d'un hexadecimal est un  hexadecimal.

Si les deux bornes sont des valeurs de couleur, tous les hexadecimaux compris entre les deux bornes sont des valeurs de des couleurs.

Je me suis rendu compte que, dans mon script, j'avais oublie les guillemets dans le settimeout.
Les guillemets mis, le document a change de comportement.

Maintenant, le texte apparait progressivement, mais toujours jusqu'au jaune seulement, et s'eteint, puis recommence.

Voila l'etat actuel de mon script :

<div
id = conteneur
>
tbtuf6ny7idntyutbtuf6ny7idntyutbtuf6ny
</div>

<script language = 'Javascript'>

hd_deb = document.bgColor.replace('#','0x')
hd_fin = '0x000000'
courante = hd_deb

delai = 1

function faire_apparaitre()
{
if( courante < hd_fin )
courante++
else if( courante > hd_fin )
courante--
else
alert('Fini!')

hd_courante = courante.toString(16)
while(hd_courante.length < 6)
hd_courante = '0' + hd_courante

document.getElementById('conteneur').innerHTML = " <a style = ' color : #" + hd_courante + " ' > aaaaaaaaaaaaa </a> "

setTimeout('faire_apparaitre()', delai)
}

faire_apparaitre()

</script>

J'ai trouve sur le vebe une page qui fait a peu pres l'effet que je veux produire et je suis en train de la decortiquer.

Merci encore,

Dominique

Rapporter au modérateur  
Répondre    Aviser des réponses    Envoyer le sujet    Imprimer
Pages: [1] Monter
« Précédent Suivant »
Sauter à: 

Votre statut : Invité
Vous devez être membre pour participer.
 
 
Let’s Encrypt : le certificat SSL gratuit
Tester votre site internet sur différents navigateurs
[WordPress] Des problèmes avec l’administration ?
Rappel : Mettez à jour vos CMS et vos sites E-commerce
Le .fr fête ses 25 années d’existence !
Mesurer votre audience en temps réel avec BubbleStat
Porter réclamation contre Google Panda ?
Zlio n’est plus …
 
 
 
 
 

Copyright (c) Devclic 2002 - 2026 - Tous droits réservés

creation site internet strasbourg