0
我有一個div,我想隨機淡出和5個不同的背景圖像。背景圖像褪色jquery
我已經爲此下載了一個jquery插件,但不幸的是它交替出現 - 我會解釋。
您必須設置一個默認背景圖像(對於這種情況可以說「image1」),然後加載一個圖像數組(例如image2,image3,image4和image5)。插件所做的是複製div並將其直接放在原始區域上,然後淡入然後將其中一個圖像陣列。我是從這樣獲得的不良反應爲:
1,2,1,3,1,4,1,5
,而不是:
1,2,3,4 ,5
因爲淡出簡單再次顯示默認圖像。
沒有重新發明輪子,有一種方法可以修改代碼,當淡入動畫完成時(默認是完全隱藏的)我將背景div上的圖像換出,這樣當淡出從下面開始有新圖片?我對JQuery比較陌生,所以這不是我的強項。
繼承人的插件的動作部分:在我的HTML
var tempImage = new Image();
jQuery(tempImage).load(function(){
var newImage = (helperElement.css('display') == 'block') ? jQuery(this) : jQuery(helperElement);
newImage.css('backgroundImage', 'url('+tempImage.src+')');
helperElement.animate(settings.effect, settings.duration, settings.easing, settings.callback);
});
tempImage.src = src;
和:
<script>
document.getElementById('content_container_home').style.backgroundImage = "url('img/buttons.jpg')";
$(function(){
var bgImages = [ 'barker.jpg', 'boards.jpg', 'feet.jpg', 'glasses.jpg' ];
var currImage = 'buttons.jpg';
setInterval(function(){
do{
var randImage = bgImages[Math.ceil(Math.random()*(bgImages.length-1))];
}while(randImage == currImage)
currImage = randImage;
$('#content_container_home').BgImageTransition('img/'+currImage);
}, 5000)
});
</script>
的事情是,它需要背景圖像上,而不是實際的img標籤,因爲我在CSS中應用了諸如background-size之類的屬性,我需要影響div。 http://jsfiddle.net/sfsPx/7/ – 2011-03-02 09:56:54
ahhhh沒錯,一定是錯過了那一點。這個答案是非常沒用的。 – Alex 2011-03-02 09:59:22