Div ID fade code

2019-08-28 06:08发布

问题:

I'm a newbie on jQuery. Can somebody help me with my 2days problem. I just in need of a sample code for a fading effect, slideshow.

Here's the style.

  • This will be 3 Divs with same class
  • The first div, will show for 6secs then fades out for 2secs
    • before the first fades out the second div will fade in for 2secs
    • this again will show for 6secs then fades out for 2secs.
  • Then the third div will fades in same way for 2secs.
  • Will show for 6secs then fades out for 2secs. Then they will rotate or loop.

Thank you for helping me out.

EDIT - Relevant code from comment

$(document).ready(function(){ 
    function looptour(){ 
        $("#health").hide();
        $("#billing").hide(); 
        $("#pension").delay(6000).fadeOut(2000);            
        $("#health").delay(6000).fadeIn(2000).delay(6000).fadeOut(2000);    
        $("#billing").delay(14000).fadeIn(2000).delay(6000).fadeOut(2000); 
        $("#pension").delay(14000).fadeIn(2000,looptour); 
   } 
   looptour(); 
});

回答1:

I'm not sure what your exact issue is, since your code seems to work for me.

If it were me, I might do it a little differently (assuming I understand the intended result).

Try it out: http://jsfiddle.net/XgFna/2/

var arr = [
    $("#pension"),
    $("#health").hide(),
    $("#billing").hide()
];
var cur = 0, nxt = 1;

setInterval(function() {
    arr[cur].fadeOut(2000);
    arr[nxt].fadeIn(2000);
    cur = (cur + 1 < arr.length) ? cur + 1 : 0;
    nxt = (nxt + 1 < arr.length) ? nxt + 1 : 0;
},6000);



回答2:

$(document).ready(function() {
    function looptour() {
        $(".quote4").hide();
        $(".quote3").hide();
        $(".quote2").hide();
        $(".quote1").delay(1000).fadeIn(3000).delay().fadeOut(1000);
        $(".quote2").delay(7000).fadeIn(3000).delay().fadeOut(1000);
        $(".quote3").delay(11000).fadeIn(3000).delay().fadeOut(1000);
        $(".quote4").delay(16000).fadeIn(6000).delay().fadeOut(1000, looptour);
    }

    looptour();
});

This is how i did it, you just need to take care of the delay.