2017-09-09 4 views
0

이미지간에 효과 효과를 만들기 위해 노력하고 있습니다.setInterval을 사용하는 fadeOut() 함수

잘 작동하는이 코드를 사용하고 있습니다. 불행히도 이미지가 효과없이 변경됩니다.

var images = [ 
    "https://www.royalcanin.com/~/media/Royal-Canin/Product-Categories/cat-adult-landing-hero.ashx", 
    "https://www.petfinder.com/wp-content/uploads/2013/09/cat-black-superstitious-fcs-cat-myths-162286659.jpg", 
    "https://upload.wikimedia.org/wikipedia/commons/4/4d/Cat_March_2010-1.jpg" 
] 

var imageHead = document.getElementById("image-head"); 
var i = 0; 

setInterval(function() { 
     imageHead.style.backgroundImage = "url(" + images[i] + ")"; 
     i = i + 1; 
     if (i == images.length) { 
     i = 0; 
     } 
}, 1000); 

https://jsfiddle.net/vvwcfkfr/1/

나는 어떤 성공을하지 않고, fadeIn, 페이드와 이번 주 솔루션의 수천을 시도했습니다.

Ryanair의 홈페이지에서 슬라이더와 같은 전환 효과를 만들려고합니다.

의견이 있으십니까? 감사.

+1

여기서 코드는 fadeIn/Out과 관련된 부분입니까? – Dekel

+0

코드의 어느 부분에서 "효과"가 있어야한다고 생각하십니까 –

+0

지금 코드에는 페이드 효과를 재현하는 부분이 없습니다. Ryanair 웹 사이트의 효과를 재현하는 코드를 찾고 있습니다. 어떠한 제안? – wrkman

답변

0

jquery fade in fade out. https://jsfiddle.net/vvwcfkfr/121/

setInterval(function() { 
     $('#image-head').fadeOut("slow", 
     function() { 
      imageHead.style.backgroundImage = "url(" + images[i] + ")"; 
      i = i + 1; 
      if (i == images.length) { 
      i = 0; 
      } 
      $('#image-head').fadeIn("slow") 
     } 
     ); 

     }, 2000); 
+0

이것은 정확히 내가 원하는 것입니다. 많은 분들께 브라이언 감사합니다. – wrkman

+0

Unfortunatelly 얻은 offect는 조금 "못생긴", 어떻게 라이언 에어 웹 사이트와 같은 효과를 얻을 수 있습니까? – wrkman

1

CSS에서 transition: background-image 0.3s;과 같은 것을 사용하여 이미지간에 페이드를 만들 수 있지만 크기는 동일해야합니다. 그렇지 않으면 애니메이션의 크기가 조정됩니다.