이미지가 서로 페이드 인 및 페이드 아웃되는 "슬라이드 쇼"유형의 기능이 있습니다. 그것은 잘 작동하지만, 사라질 때 첫 번째 그림을 흰색으로 페이드 아웃하고 두 번째 그림이 페이드 인됩니다. 원하는 것은 첫 번째 이미지가 오른쪽에서 두 번째로 사라지는 것입니다 (사이에 빈 흰색 배경 없음). 내가 할 수 있을까? 여기 자바 스크립트를 사용하여 이미지에서 이미지로 페이딩 (이미지에서 화이트에서 이미지로 변환되지 않음)
은 예입니다 http://jsfiddle.net/aegtjm5y/5/이미지
<img id="image1" src="http://9pixs.com/wp-content/uploads/2014/06/dog-pics_1404159465.jpg" style="width: 100%;">
JS는
var curIndex = 0;
var src = ['/images/IMG_20140907_203614.jpg', 'http://9pixs.com/wp-content/uploads/2014/06/dog-pics_1404159465.jpg', 'http://cvcl.mit.edu/hybrid/cat2.jpg'];
var fadeTimeInMilliseconds = 2000;
var waitTimeInMilliseconds = 1000;
$(document).ready(function(){
switchImageAndWait(true);
});
function switchImageAndWait(fadeOut2){
if(fadeOut2){
setTimeout(fadeOut, waitTimeInMilliseconds);
}else{
var index = Math.floor((Math.random()*src.length))
if(curIndex == index){
index++;
if(index >= src.length){
index-=2;
}
}
curIndex = index;
$("#image1").attr("src", src[index]);
fadeIn();
}
}
function fadeOut(){
$("#image1").fadeTo(fadeTimeInMilliseconds, 0 , function() { switchImageAndWait(false); });
}
function fadeIn(){
$("#image1").fadeTo(fadeTimeInMilliseconds, 1 , function() { switchImageAndWait(true); });
}
인라인 블록을 사용하여 이미지 그리드에서이 작업을 수행 할 계획입니다. 이미지에 position : absolute를 사용하면 오른쪽에 맞지 않습니다. 예 : 이것은 8 마리의 개와 1 마리의 고양이의 그리드를 가져야하지만, 고양이는 위치가 절대적이다. 왜 그런가? http://jsfiddle.net/cdno7svf/6/ – nick
이미지 크기를 알고 있다면 오버레이 이미지를 상대적으로 배치 할 수 있습니다 (상단 위치를 "- {높이}"로 설정하고 div의 음수 여백을 설정합니다). 이미지 보관 http://jsfiddle.net/cdno7svf/7/ – Adrian