Travail sur l'opacite...

Grand Mamamouchi Messages postés 33 Date d'inscription mardi 21 septembre 2004 Statut Membre Dernière intervention 6 mai 2005 - 24 sept. 2004 à 14:57
cs_dipin Messages postés 60 Date d'inscription dimanche 26 septembre 2004 Statut Membre Dernière intervention 15 octobre 2009 - 23 avril 2008 à 14:38
Bonjour !

Toujours a la recherche d'une maniere elegante de faire apparaitre-disparaitre progressivement du texte, je me suis lance dans une appproche prenant en compte l'opacite.

Voila ce que cela donne :

tbtuf6ny7idntyutbtuf6ny7idntyutbtuf6ny

inverser_opacite

<script language = 'Javascript'>

function appliquer_opacite(id, opacite)
{
objet_style = document.getElementById(id).style
objet_style.opacity = (opacite/100)
objet_style.MozOpacity = (opacite/100)
objet_style.KhtmlOpacity = (opacite/100)objet_style.filter ' alpha(opacity ' + opacite + ')'
}

function opacifier(id, opacite_cible, duree_proces)
{
if( opacite_courante < opacite_cible )
{
appliquer_opacite(id, opacite++)
setTimeout('opacifier(id, opacite_cible, duree_proces)', duree_proces/100)
}
else if(opacite_courante > opacite_cible)
{
appliquer_opacite(id, opacite--)
setTimeout('opacifier(id, opacite_cible, duree_proces)', duree_proces/100)
}
else
alert('Action suivante, SVP !')
}

function inverser_opacite(id, duree_proces)
{
if(appliquer_opacite(id, opacite) == 0)
opacifier(id, 100, duree_proces)
else
opacifier(id, 0, duree_proces)
}

</script>

Ca ne fonctionne pas.

Si l'un d'entre vous a envie de se pencher sur la question, son aide sera la bienvenue...

Merci de votre contribution.

Grand Mamamouchi

1 réponse

cs_dipin Messages postés 60 Date d'inscription dimanche 26 septembre 2004 Statut Membre Dernière intervention 15 octobre 2009
23 avril 2008 à 14:38
bon alors j'ai une methode plus simple qui marche sur mozilla (après il faut rajouter les fonctions d'opacity d'IE pour que ca marche sous IE)

Tu met ca dans ta div :

style= "-moz-opacity:1; opacity:1;" et id="chang_opacity"

et après tu utilise cette fonction :
var i =0; variable globale
var timer; variable globale

function apparition()
{
   
var objet_chang = document.getElementById('chang_opacity'); creation d'une variable representant la div

    if(i<1) limite pour le timer
    {
    i= i+0.1; augmente de 10% a chaque tour de boucle
    objet_chang.style.MozOpacity = i;
   objet_chang.style.opacity = i;
    timer = window.setTimeout(" apparition() ;",100); relance la fonction toutes les 100ms
    }
    else
    {
    i =0; état initial
    //alert('fin');
    return; sortie de la fonction
    }
   
}

j'espere que cela pourra t'aider si probleme reconctacte moi, je pourrai t'envoyer un exemple ..
tcho bonne journée a tous

<<------------QuE lA FETE CoMmEnCe------------>>
0
Rejoignez-nous