멋진 JQuery fadeIn 및 fadeOut을 사용하여 매 2 초마다 한 번에 하나씩 회전해야하는 이미지 모음이 있습니다. HTML에있는 모든 이미지를 미리로드하고 현재 이미지를 페이드 아웃하는 setInterval 타이머를 가지고 다음 이미지를 페이드 인합니다. 페이드 인/아웃 프로세스 중에 클릭하거나 스크롤 할 때 가끔 문제가 발생합니다. JS가 중단되고 현재 이미지가 사라지지 않으며 다음 이미지가 사라져 두 개의 이미지가 표시됩니다.JQuery 페이드 인 setInterval이 산발적으로 작동하는 경우
2 초마다 제대로 실행되지 않는 setInterval과 관련이 있다는 느낌이 들지만 필요한 부분을 수행하는 데 더 좋은 방법이 있습니까?
<a href="javascript:;">
<img id="img1" src="image1.gif" />
<img id="img2" src="image2.gif" style="display:none;" />
<img id="img3" src="image3.gif" style="display:none;" />
</a>
JS
var numImages = 3;
var currentImage = 1;
imageInterval = window.setInterval("changeImage();", 2000);
function changeImage()
{
$("#img" + currentImage).fadeOut("slow", function() {
if (currentImage >= numImages)
{
currentImage = 0;
}
$("#img" + (currentImage + 1)).fadeIn("slow", function() {
currentImage++;
});
});
}
와우, 놀라운 플러그인. 감사! –