2016-03-23 2 views
-1

je cherchais un script pour faire une div à se faner dedans et dehors, et a trouvé cette question fade in and fade out in pure javascript without jqueryMake fade in-out effet court infini (JS pur, non jQuery)

utilisateur bgoldst a donné une belle solution ça a marché pour moi. Mais j'aurais besoin que le fade in-out s'exécute en boucle, pas seulement une fois comme indiqué par le code de bgoldst. Je suis totalement nouveau chez JS et je ne sais pas comment le faire fonctionner, aucune suggestion?

EDIT: Je l'ai trouvé une solution intermédiaire avec la suggestion de Luc et les suggestions de Kai de Pure JavaScript fade in function

C'est

 <script type="text/javascript"> 
     var div = document.getElementById("foo"); 
     setInterval(function() { 
     div.style.transition="opacity 1.5s"; 
     div.style.opacity=0; 
     }, 1500); 
     setInterval(function() { 
     div.style.transition="opacity 1.5s"; 
     div.style.opacity=1; 
     }, 3005); 
     </script> 

Cependant, l'effet de fondu/sortie n'a pas un comportement symétrique.

Répondre

0

Vous pouvez utiliser CSS pour cela, pas de Javascript nécessaire. Il suffit d'utiliser la propriété d'animation CSS (ensemble des images clés si vous voulez, etc.), puis définissez cette propriété:

animation-iteration-count: infinite;

Sur la base de votre commentaire, voici un stylo, je fait cela faire ce que vous voulez - vous Il suffira de changer l'animation de changer la couleur d'arrière-plan pour la faire disparaître. J'espère que cela:

http://codepen.io/lukeschunk/pen/pyPpQO

+0

Salut Luc, merci pour répondre. J'essayais avec les images clés initialement, mais j'ai eu des problèmes en utilisant IE, donc, j'ai décidé d'essayer avec JS. – b1919676

+0

Vous pouvez utiliser la méthode javascript 'setInterval'. Cela va exécuter quelque chose pour toujours sur un intervalle donné. Vous voulez que la valeur de l'intervalle en millisecondes corresponde à vos besoins en fonction de la durée de votre animation. –

+0

@ b1919676 voir le stylo que je viens de coupler - je pense que cela vous mettra sur la bonne voie :) –